Title: [245439] releases/WebKitGTK/webkit-2.24
Revision
245439
Author
[email protected]
Date
2019-05-17 03:14:31 -0700 (Fri, 17 May 2019)

Log Message

Merge r243819 - Remove support for -apple-trailing-word
https://bugs.webkit.org/show_bug.cgi?id=196525

Reviewed by Zalan Bujtas.

This CSS property is nonstandard and not used.

.:

* Source/cmake/WebKitFeatures.cmake:

Source/_javascript_Core:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::valueForPropertyinStyle):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::operator TrailingWord const): Deleted.
* css/CSSProperties.json:
* css/CSSValueKeywords.in:
* css/parser/CSSParserFastPaths.cpp:
(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
(WebCore::CSSParserFastPaths::isKeywordPropertyID):
* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseForStyle):
* rendering/SimpleLineLayoutCoverage.cpp:
(WebCore::SimpleLineLayout::printReason):
* rendering/SimpleLineLayoutCoverage.h:
* rendering/line/BreakingContext.h:
(WebCore::BreakingContext::BreakingContext):
(WebCore::BreakingContext::lineBreak):
(WebCore::BreakingContext::clearLineBreakIfFitsOnLine):
(WebCore::BreakingContext::commitLineBreakClear):
(WebCore::BreakingContext::commitLineBreakAtCurrentWidth):
(WebCore::BreakingContext::handleBR):
(WebCore::BreakingContext::handleFloat):
(WebCore::BreakingContext::handleText):
(WebCore::BreakingContext::handleEndOfLine):
(WebCore::BreakingContext::InlineIteratorHistory::InlineIteratorHistory): Deleted.
(WebCore::BreakingContext::InlineIteratorHistory::push): Deleted.
(WebCore::BreakingContext::InlineIteratorHistory::update): Deleted.
(WebCore::BreakingContext::InlineIteratorHistory::renderer const): Deleted.
(WebCore::BreakingContext::InlineIteratorHistory::offset const): Deleted.
(WebCore::BreakingContext::InlineIteratorHistory::nextBreakablePosition const): Deleted.
(WebCore::BreakingContext::InlineIteratorHistory::atTextParagraphSeparator const): Deleted.
(WebCore::BreakingContext::InlineIteratorHistory::previousInSameNode const): Deleted.
(WebCore::BreakingContext::InlineIteratorHistory::get const): Deleted.
(WebCore::BreakingContext::InlineIteratorHistory::current const): Deleted.
(WebCore::BreakingContext::InlineIteratorHistory::historyLength const): Deleted.
(WebCore::BreakingContext::InlineIteratorHistory::moveTo): Deleted.
(WebCore::BreakingContext::InlineIteratorHistory::increment): Deleted.
(WebCore::BreakingContext::InlineIteratorHistory::clear): Deleted.
(WebCore::BreakingContext::optimalLineBreakLocationForTrailingWord): Deleted.
* rendering/style/RenderStyle.h:
(WebCore::RenderStyle::trailingWord const): Deleted.
(WebCore::RenderStyle::setTrailingWord): Deleted.
(WebCore::RenderStyle::initialTrailingWord): Deleted.
* rendering/style/RenderStyleConstants.h:
* rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator== const):
* rendering/style/StyleRareInheritedData.h:

Source/WebCore/PAL:

* Configurations/FeatureDefines.xcconfig:

Source/WebInspectorUI:

* UserInterface/Models/CSSKeywordCompletions.js:

Source/WebKit:

* Configurations/FeatureDefines.xcconfig:

Source/WebKitLegacy/mac:

* Configurations/FeatureDefines.xcconfig:

Tools:

* Scripts/webkitperl/FeatureList.pm:
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:

LayoutTests:

* fast/text/trailing-word-expected.html: Removed.
* fast/text/trailing-word.html: Removed.
* platform/gtk/TestExpectations:
* platform/mac/fast/text/trailing-word-parse-expected.txt: Removed.
* platform/mac/fast/text/trailing-word-parse.html: Removed.
* platform/win/TestExpectations:

Modified Paths

Removed Paths

Diff

Modified: releases/WebKitGTK/webkit-2.24/ChangeLog (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/ChangeLog	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/ChangeLog	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1,3 +1,14 @@
+2019-04-03  Myles C. Maxfield  <[email protected]>
+
+        Remove support for -apple-trailing-word
+        https://bugs.webkit.org/show_bug.cgi?id=196525
+
+        Reviewed by Zalan Bujtas.
+
+        This CSS property is nonstandard and not used.
+
+        * Source/cmake/WebKitFeatures.cmake:
+
 2019-05-09  Xan López  <[email protected]>
 
         [CMake] Detect SSE2 at compile time

Modified: releases/WebKitGTK/webkit-2.24/LayoutTests/ChangeLog (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/LayoutTests/ChangeLog	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/LayoutTests/ChangeLog	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1,3 +1,19 @@
+2019-04-03  Myles C. Maxfield  <[email protected]>
+
+        Remove support for -apple-trailing-word
+        https://bugs.webkit.org/show_bug.cgi?id=196525
+
+        Reviewed by Zalan Bujtas.
+
+        This CSS property is nonstandard and not used.
+
+        * fast/text/trailing-word-expected.html: Removed.
+        * fast/text/trailing-word.html: Removed.
+        * platform/gtk/TestExpectations:
+        * platform/mac/fast/text/trailing-word-parse-expected.txt: Removed.
+        * platform/mac/fast/text/trailing-word-parse.html: Removed.
+        * platform/win/TestExpectations:
+
 2019-04-02  Simon Fraser  <[email protected]>
 
         REGRESSION (r238266): Exchange 2013 Outlook Web Access displays partially blank page when creating new e-mail

Deleted: releases/WebKitGTK/webkit-2.24/LayoutTests/fast/text/trailing-word-expected.html (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/LayoutTests/fast/text/trailing-word-expected.html	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/LayoutTests/fast/text/trailing-word-expected.html	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-</head>
-<body>
-This test makes sure that -apple-trailing-word: -apple-partially-balanced breaks lines correctly.
-<div style="font-family: Ahem;">
-<div>ABC DEF GHI JKL MNO PQRS TUVW XYZ ABC DEF GHI JKL<br>MNO</div>
-<div>ABC DEF GHI JKL MNO PQRS TUVW XYZ ABC DEF GHI<br>JKL MNO</div>
-<div>ABC DEF GHI JKL MNO PQRS TUVW XYZ ABC DEF G H<br>I J K</div>
-<div>ABC DEF GHI JKL MNO PQRS TUVW XYZ ABC DEF GHI JKL<br>MNO PQRS</div>
-<div>ABC DEF GHI JKL MNO PQRS TUVW XYZ ABC DEF GHI JKL<br>MNO PQRS TUV WXYZ ABC DEF GHI JKL MNO PQRS TUV<br>WXYZ</div>
-</div>
-</body>
-</html>

Deleted: releases/WebKitGTK/webkit-2.24/LayoutTests/fast/text/trailing-word.html (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/LayoutTests/fast/text/trailing-word.html	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/LayoutTests/fast/text/trailing-word.html	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1,15 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-</head>
-<body>
-This test makes sure that -apple-trailing-word: -apple-partially-balanced breaks lines correctly.
-<div style="font-family: Ahem;">
-<div>ABC DEF GHI JKL MNO PQRS TUVW XYZ ABC DEF GHI JKL MNO</div>
-<div style="-apple-trailing-word: -apple-partially-balanced;">ABC DEF GHI JKL MNO PQRS TUVW XYZ ABC DEF GHI JKL MNO</div>
-<div style="-apple-trailing-word: -apple-partially-balanced;">ABC DEF GHI JKL MNO PQRS TUVW XYZ ABC DEF G H I J K</div>
-<div style="-apple-trailing-word: -apple-partially-balanced;">ABC DEF GHI JKL MNO PQRS TUVW XYZ ABC DEF GHI JKL MNO PQRS</div>
-<div style="-apple-trailing-word: -apple-partially-balanced;">ABC DEF GHI JKL MNO PQRS TUVW XYZ ABC DEF GHI JKL MNO PQRS TUV WXYZ ABC DEF GHI JKL MNO PQRS TUV WXYZ</div>
-</div>
-</body>
-</html>

Modified: releases/WebKitGTK/webkit-2.24/LayoutTests/platform/gtk/TestExpectations (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/LayoutTests/platform/gtk/TestExpectations	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/LayoutTests/platform/gtk/TestExpectations	2019-05-17 10:14:31 UTC (rev 245439)
@@ -3201,7 +3201,6 @@
 
 webkit.org/b/160248 fast/text/combining-mark-paint.html [ ImageOnlyFailure ]
 webkit.org/b/160248 fast/text/synthetic-bold-transformed.html [ ImageOnlyFailure ]
-webkit.org/b/160248 fast/text/trailing-word.html [ ImageOnlyFailure ]
 
 webkit.org/b/160249 fast/shrink-wrap/rect-shrink-wrap.html [ ImageOnlyFailure ]
 

Deleted: releases/WebKitGTK/webkit-2.24/LayoutTests/platform/mac/fast/text/trailing-word-parse-expected.txt (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/LayoutTests/platform/mac/fast/text/trailing-word-parse-expected.txt	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/LayoutTests/platform/mac/fast/text/trailing-word-parse-expected.txt	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1,41 +0,0 @@
-PASS cssRule.type is cssRule.STYLE_RULE
-PASS declaration.length is 0
-PASS declaration.getPropertyValue('-apple-trailing-word') is ""
-PASS computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText is "auto"
-PASS cssRule.type is cssRule.STYLE_RULE
-PASS declaration.length is 1
-PASS declaration.getPropertyValue('-apple-trailing-word') is "initial"
-PASS computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText is "auto"
-PASS cssRule.type is cssRule.STYLE_RULE
-PASS declaration.length is 1
-PASS declaration.getPropertyValue('-apple-trailing-word') is "-webkit-partially-balanced"
-PASS computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText is "-webkit-partially-balanced"
-PASS cssRule.type is cssRule.STYLE_RULE
-PASS declaration.length is 0
-PASS computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText is "auto"
-PASS cssRule.type is cssRule.STYLE_RULE
-PASS declaration.length is 0
-PASS computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText is "auto"
-PASS cssRule.type is cssRule.STYLE_RULE
-PASS declaration.length is 0
-PASS computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText is "auto"
-PASS cssRule.type is cssRule.STYLE_RULE
-PASS declaration.length is 0
-PASS computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText is "auto"
-PASS cssRule.type is cssRule.STYLE_RULE
-PASS declaration.length is 0
-PASS computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText is "auto"
-PASS cssRule.type is cssRule.STYLE_RULE
-PASS declaration.length is 0
-PASS computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText is "auto"
-PASS cssRule.type is cssRule.STYLE_RULE
-PASS declaration.length is 1
-PASS declaration.getPropertyValue('-apple-trailing-word') is "auto"
-PASS computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText is "auto"
-PASS cssRule.type is cssRule.STYLE_RULE
-PASS declaration.length is 0
-PASS computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText is "auto"
-PASS successfullyParsed is true
-
-TEST COMPLETE
-

Deleted: releases/WebKitGTK/webkit-2.24/LayoutTests/platform/mac/fast/text/trailing-word-parse.html (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/LayoutTests/platform/mac/fast/text/trailing-word-parse.html	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/LayoutTests/platform/mac/fast/text/trailing-word-parse.html	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1,104 +0,0 @@
-<!DOCTYPE HTML>
-<html>
-<head>
-<script src=""
-</head>
-<body>
-  <div id="p"></div>
-  <script type="text/_javascript_">
-    function testPartiallyBalancedIsValid(stylesheet, target) {
-      cssRule = stylesheet.cssRules.item(0);
-      shouldBe("cssRule.type", "cssRule.STYLE_RULE");
-      declaration = cssRule.style;
-      shouldBe("declaration.length", "1");
-      shouldBeEqualToString("declaration.getPropertyValue('-apple-trailing-word')", "-webkit-partially-balanced");
-      computedStyle = window.getComputedStyle(target, null);
-      shouldBeEqualToString("computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText", "-webkit-partially-balanced");
-      stylesheet.deleteRule(0);
-    }
-
-    function testEmptyIsNone(stylesheet, target) {
-      cssRule = stylesheet.cssRules.item(0);
-      shouldBe("cssRule.type", "cssRule.STYLE_RULE");
-      declaration = cssRule.style;
-      shouldBe("declaration.length", "0");
-      shouldBeEqualToString("declaration.getPropertyValue('-apple-trailing-word')", "");
-      computedStyle = window.getComputedStyle(target, null);
-      shouldBeEqualToString("computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText", "auto");
-      stylesheet.deleteRule(0);
-    }
-
-    function testInitialIsNone(stylesheet, target) {
-      cssRule = stylesheet.cssRules.item(0);
-      shouldBe("cssRule.type", "cssRule.STYLE_RULE");
-      declaration = cssRule.style;
-      shouldBe("declaration.length", "1");
-      shouldBeEqualToString("declaration.getPropertyValue('-apple-trailing-word')",  "initial");
-      computedStyle = window.getComputedStyle(target, null);
-      shouldBeEqualToString("computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText", "auto");
-      stylesheet.deleteRule(0);
-    }
-
-    function testInvalidRule(stylesheet, target) {
-      cssRule = stylesheet.cssRules.item(0);
-      shouldBe("cssRule.type", "cssRule.STYLE_RULE");
-      declaration = cssRule.style;
-      shouldBe("declaration.length", "0");
-      computedStyle = window.getComputedStyle(target, null);
-      shouldBeEqualToString("computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText", "auto");
-      stylesheet.deleteRule(0);
-    }
-
-    function testNoneIsValid(stylesheet, target) {
-      cssRule = stylesheet.cssRules.item(0);
-      shouldBe("cssRule.type", "cssRule.STYLE_RULE");
-      declaration = cssRule.style;
-      shouldBe("declaration.length", "1");
-      shouldBeEqualToString("declaration.getPropertyValue('-apple-trailing-word')", "auto");
-      computedStyle = window.getComputedStyle(target, null);
-      shouldBeEqualToString("computedStyle.getPropertyCSSValue('-apple-trailing-word').cssText", "auto");
-      stylesheet.deleteRule(0);
-    }
-
-    var styleElement = document.createElement("style");
-    document.head.appendChild(styleElement);
-    stylesheet = styleElement.sheet;
-    var target = document.getElementById("p");
-
-    stylesheet.insertRule("#p { }", 0);
-    testEmptyIsNone(stylesheet, target);
-
-    stylesheet.insertRule("#p { -apple-trailing-word: initial; }", 0);
-    testInitialIsNone(stylesheet, target);
-
-    stylesheet.insertRule("#p { -apple-trailing-word: -apple-partially-balanced; }", 0);
-    testPartiallyBalancedIsValid(stylesheet, target);
-
-    stylesheet.insertRule("#p { -apple-trailing-word: -apple-partially-balanced -apple-partially-balanced -apple-partially-balanced; }", 0);
-    testInvalidRule(stylesheet, target);
-
-    stylesheet.insertRule("#p { -apple-trailing-word: garbage; }", 0);
-    testInvalidRule(stylesheet, target);
-
-    stylesheet.insertRule("#p { -apple-trailing-word: garbage -apple-partially-balanced; }", 0);
-    testInvalidRule(stylesheet, target);
-
-    stylesheet.insertRule("#p { -apple-trailing-word: -apple-partially-balanced garbage; }", 0);
-    testInvalidRule(stylesheet, target);
-
-    stylesheet.insertRule("#p { -apple-trailing-word: garbage -apple-partially-balanced garbage; }", 0);
-    testInvalidRule(stylesheet, target);
-
-    stylesheet.insertRule("#p { -apple-trailing-word: -apple-partially-balanced garbage -apple-partially-balanced; }", 0);
-    testInvalidRule(stylesheet, target);
-
-    stylesheet.insertRule("#p { -apple-trailing-word: auto; }", 0);
-    testNoneIsValid(stylesheet, target);
-
-    stylesheet.insertRule("#p { -apple-trailing-word: ; }", 0);
-    testInvalidRule(stylesheet, target);
-  </script>
-<script src=""
-</body>
-</html>
-

Modified: releases/WebKitGTK/webkit-2.24/LayoutTests/platform/win/TestExpectations (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/LayoutTests/platform/win/TestExpectations	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/LayoutTests/platform/win/TestExpectations	2019-05-17 10:14:31 UTC (rev 245439)
@@ -2977,7 +2977,6 @@
 fast/ruby/ruby-expansion-cjk-5.html [ ImageOnlyFailure ]
 fast/text/combining-mark-paint.html [ ImageOnlyFailure ]
 fast/text/synthetic-bold-transformed.html [ ImageOnlyFailure ]
-fast/text/trailing-word.html [ ImageOnlyFailure ]
 
 # TestRunner::addChromeInputField() and focusWebView() not implemented
 fast/forms/focus-option-control-on-page.html [ Skip ]

Modified: releases/WebKitGTK/webkit-2.24/Source/_javascript_Core/ChangeLog (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/_javascript_Core/ChangeLog	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/_javascript_Core/ChangeLog	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1,3 +1,14 @@
+2019-04-03  Myles C. Maxfield  <[email protected]>
+
+        Remove support for -apple-trailing-word
+        https://bugs.webkit.org/show_bug.cgi?id=196525
+
+        Reviewed by Zalan Bujtas.
+
+        This CSS property is nonstandard and not used.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2019-03-12  Michael Saboff  <[email protected]>
 
         REGRESSION (iOS 12.2): Webpage using CoffeeScript crashes

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/ChangeLog (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/ChangeLog	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/ChangeLog	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1,3 +1,62 @@
+2019-04-03  Myles C. Maxfield  <[email protected]>
+
+        Remove support for -apple-trailing-word
+        https://bugs.webkit.org/show_bug.cgi?id=196525
+
+        Reviewed by Zalan Bujtas.
+
+        This CSS property is nonstandard and not used.
+
+        * Configurations/FeatureDefines.xcconfig:
+        * css/CSSComputedStyleDeclaration.cpp:
+        (WebCore::ComputedStyleExtractor::valueForPropertyinStyle):
+        * css/CSSPrimitiveValueMappings.h:
+        (WebCore::CSSPrimitiveValue::operator TrailingWord const): Deleted.
+        * css/CSSProperties.json:
+        * css/CSSValueKeywords.in:
+        * css/parser/CSSParserFastPaths.cpp:
+        (WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
+        (WebCore::CSSParserFastPaths::isKeywordPropertyID):
+        * rendering/SimpleLineLayout.cpp:
+        (WebCore::SimpleLineLayout::canUseForStyle):
+        * rendering/SimpleLineLayoutCoverage.cpp:
+        (WebCore::SimpleLineLayout::printReason):
+        * rendering/SimpleLineLayoutCoverage.h:
+        * rendering/line/BreakingContext.h:
+        (WebCore::BreakingContext::BreakingContext):
+        (WebCore::BreakingContext::lineBreak):
+        (WebCore::BreakingContext::clearLineBreakIfFitsOnLine):
+        (WebCore::BreakingContext::commitLineBreakClear):
+        (WebCore::BreakingContext::commitLineBreakAtCurrentWidth):
+        (WebCore::BreakingContext::handleBR):
+        (WebCore::BreakingContext::handleFloat):
+        (WebCore::BreakingContext::handleText):
+        (WebCore::BreakingContext::handleEndOfLine):
+        (WebCore::BreakingContext::InlineIteratorHistory::InlineIteratorHistory): Deleted.
+        (WebCore::BreakingContext::InlineIteratorHistory::push): Deleted.
+        (WebCore::BreakingContext::InlineIteratorHistory::update): Deleted.
+        (WebCore::BreakingContext::InlineIteratorHistory::renderer const): Deleted.
+        (WebCore::BreakingContext::InlineIteratorHistory::offset const): Deleted.
+        (WebCore::BreakingContext::InlineIteratorHistory::nextBreakablePosition const): Deleted.
+        (WebCore::BreakingContext::InlineIteratorHistory::atTextParagraphSeparator const): Deleted.
+        (WebCore::BreakingContext::InlineIteratorHistory::previousInSameNode const): Deleted.
+        (WebCore::BreakingContext::InlineIteratorHistory::get const): Deleted.
+        (WebCore::BreakingContext::InlineIteratorHistory::current const): Deleted.
+        (WebCore::BreakingContext::InlineIteratorHistory::historyLength const): Deleted.
+        (WebCore::BreakingContext::InlineIteratorHistory::moveTo): Deleted.
+        (WebCore::BreakingContext::InlineIteratorHistory::increment): Deleted.
+        (WebCore::BreakingContext::InlineIteratorHistory::clear): Deleted.
+        (WebCore::BreakingContext::optimalLineBreakLocationForTrailingWord): Deleted.
+        * rendering/style/RenderStyle.h:
+        (WebCore::RenderStyle::trailingWord const): Deleted.
+        (WebCore::RenderStyle::setTrailingWord): Deleted.
+        (WebCore::RenderStyle::initialTrailingWord): Deleted.
+        * rendering/style/RenderStyleConstants.h:
+        * rendering/style/StyleRareInheritedData.cpp:
+        (WebCore::StyleRareInheritedData::StyleRareInheritedData):
+        (WebCore::StyleRareInheritedData::operator== const):
+        * rendering/style/StyleRareInheritedData.h:
+
 2019-04-02  Simon Fraser  <[email protected]>
 
         REGRESSION (r238266): Exchange 2013 Outlook Web Access displays partially blank page when creating new e-mail

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/PAL/ChangeLog (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/PAL/ChangeLog	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/PAL/ChangeLog	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1,3 +1,14 @@
+2019-04-03  Myles C. Maxfield  <[email protected]>
+
+        Remove support for -apple-trailing-word
+        https://bugs.webkit.org/show_bug.cgi?id=196525
+
+        Reviewed by Zalan Bujtas.
+
+        This CSS property is nonstandard and not used.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2019-02-16  Darin Adler  <[email protected]>
 
         Continue reducing use of String::format, now focusing on hex: "%p", "%x", etc.

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/css/CSSComputedStyleDeclaration.cpp (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/css/CSSComputedStyleDeclaration.cpp	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/css/CSSComputedStyleDeclaration.cpp	2019-05-17 10:14:31 UTC (rev 245439)
@@ -4029,11 +4029,6 @@
             return valueForScrollSnapAlignment(style.scrollSnapAlign());
 #endif
 
-#if ENABLE(CSS_TRAILING_WORD)
-        case CSSPropertyAppleTrailingWord:
-            return cssValuePool.createValue(style.trailingWord());
-#endif
-
 #if ENABLE(APPLE_PAY)
         case CSSPropertyApplePayButtonStyle:
             return cssValuePool.createValue(style.applePayButtonStyle());

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/css/CSSPrimitiveValueMappings.h (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/css/CSSPrimitiveValueMappings.h	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/css/CSSPrimitiveValueMappings.h	2019-05-17 10:14:31 UTC (rev 245439)
@@ -5405,40 +5405,6 @@
 
 #endif
 
-#if ENABLE(CSS_TRAILING_WORD)
-template<> inline CSSPrimitiveValue::CSSPrimitiveValue(TrailingWord e)
-    : CSSValue(PrimitiveClass)
-{
-    m_primitiveUnitType = CSS_VALUE_ID;
-    switch (e) {
-    case TrailingWord::Auto:
-        m_value.valueID = CSSValueAuto;
-        break;
-    case TrailingWord::PartiallyBalanced:
-        m_value.valueID = CSSValueWebkitPartiallyBalanced;
-        break;
-    default:
-        ASSERT_NOT_REACHED();
-        break;
-    }
-}
-
-template<> inline CSSPrimitiveValue::operator TrailingWord() const
-{
-    ASSERT(isValueID());
-    switch (m_value.valueID) {
-    case CSSValueAuto:
-        return TrailingWord::Auto;
-    case CSSValueWebkitPartiallyBalanced:
-        return TrailingWord::PartiallyBalanced;
-    default:
-        break;
-    }
-    ASSERT_NOT_REACHED();
-    return TrailingWord::Auto;
-}
-#endif
-
 #if ENABLE(APPLE_PAY)
 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(ApplePayButtonStyle e)
     : CSSValue(PrimitiveClass)

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/css/CSSProperties.json (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/css/CSSProperties.json	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/css/CSSProperties.json	2019-05-17 10:14:31 UTC (rev 245439)
@@ -6954,18 +6954,6 @@
             },
             "status": "non-standard"
         },
-        "-apple-trailing-word": {
-            "inherited": true,
-            "values": [
-                "auto",
-                "-webkit-partially-balanced"
-            ],
-            "codegen-properties": {
-                "name-for-methods": "TrailingWord",
-                "enable-if": "ENABLE_CSS_TRAILING_WORD"
-            },
-            "status": "non-standard"
-        },
         "-apple-pay-button-style": {
             "codegen-properties": {
                 "enable-if": "ENABLE_APPLE_PAY"

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/css/CSSValueKeywords.in (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/css/CSSValueKeywords.in	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/css/CSSValueKeywords.in	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1323,11 +1323,6 @@
 from-dimensions
 from-intrinsic
 
-#if defined(ENABLE_CSS_TRAILING_WORD) && ENABLE_CSS_TRAILING_WORD
-// -apple-trailing-word
--webkit-partially-balanced
-#endif
-
 #if defined(ENABLE_APPLE_PAY) && ENABLE_APPLE_PAY
 // -apple-pay-button-style
 white-outline

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/css/parser/CSSParserFastPaths.cpp (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/css/parser/CSSParserFastPaths.cpp	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/css/parser/CSSParserFastPaths.cpp	2019-05-17 10:14:31 UTC (rev 245439)
@@ -762,10 +762,6 @@
         return valueID == CSSValueNormal || valueID == CSSValueBreakAll || valueID == CSSValueKeepAll || valueID == CSSValueBreakWord;
     case CSSPropertyWebkitBorderFit:
         return valueID == CSSValueBorder || valueID == CSSValueLines;
-#if ENABLE(CSS_TRAILING_WORD)
-    case CSSPropertyAppleTrailingWord: // auto | -apple-partially-balanced
-        return valueID == CSSValueAuto || valueID == CSSValueWebkitPartiallyBalanced;
-#endif
 #if ENABLE(APPLE_PAY)
     case CSSPropertyApplePayButtonStyle: // white | white-outline | black
         return valueID == CSSValueWhite || valueID == CSSValueWhiteOutline || valueID == CSSValueBlack;
@@ -934,9 +930,6 @@
     // case CSSPropertyTextJustify:
     // case CSSPropertyTextOrientation:
     // case CSSPropertyUserSelect:
-#if ENABLE(CSS_TRAILING_WORD)
-    case CSSPropertyAppleTrailingWord:
-#endif
 #if ENABLE(CSS_COMPOSITING)
     case CSSPropertyIsolation:
     case CSSPropertyMixBlendMode:

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/SimpleLineLayout.cpp (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/SimpleLineLayout.cpp	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/SimpleLineLayout.cpp	2019-05-17 10:14:31 UTC (rev 245439)
@@ -240,10 +240,6 @@
         SET_REASON_AND_RETURN_IF_NEEDED(FlowHasNonAutoLineBreak, reasons, includeReasons);
     if (style.nbspMode() != NBSPMode::Normal)
         SET_REASON_AND_RETURN_IF_NEEDED(FlowHasWebKitNBSPMode, reasons, includeReasons);
-#if ENABLE(CSS_TRAILING_WORD)
-    if (style.trailingWord() != TrailingWord::Auto)
-        SET_REASON_AND_RETURN_IF_NEEDED(FlowHasNonAutoTrailingWord, reasons, includeReasons);
-#endif
     if (style.hyphens() == Hyphens::Auto) {
         auto textReasons = canUseForText(style.hyphenString(), style.fontCascade(), WTF::nullopt, false, includeReasons);
         if (textReasons != NoReason)

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/SimpleLineLayoutCoverage.cpp (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/SimpleLineLayoutCoverage.cpp	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/SimpleLineLayoutCoverage.cpp	2019-05-17 10:14:31 UTC (rev 245439)
@@ -135,9 +135,6 @@
     case FlowHasNonAutoLineBreak:
         stream << "line-break is not auto";
         break;
-    case FlowHasNonAutoTrailingWord:
-        stream << "-apple-trailing-word is not auto";
-        break;
     case FlowHasSVGFont:
         stream << "SVG font";
         break;

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/SimpleLineLayoutCoverage.h (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/SimpleLineLayoutCoverage.h	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/SimpleLineLayoutCoverage.h	2019-05-17 10:14:31 UTC (rev 245439)
@@ -66,7 +66,6 @@
     FlowHasTextFillBox                    = 1LLU  << 28,
     FlowHasBorderFitLines                 = 1LLU  << 29,
     FlowHasNonAutoLineBreak               = 1LLU  << 30,
-    FlowHasNonAutoTrailingWord            = 1LLU  << 31,
     FlowHasSVGFont                        = 1LLU  << 32,
     FlowTextIsEmpty                       = 1LLU  << 33,
     FlowTextHasSoftHyphen                 = 1LLU  << 34,

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/line/BreakingContext.h (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/line/BreakingContext.h	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/line/BreakingContext.h	2019-05-17 10:14:31 UTC (rev 245439)
@@ -97,11 +97,7 @@
         : m_lineBreaker(lineBreaker)
         , m_resolver(resolver)
         , m_current(resolver.position())
-#if ENABLE(CSS_TRAILING_WORD)
-        , m_lineBreakHistory(InlineIterator(resolver.position()), block.style().trailingWord() == TrailingWord::PartiallyBalanced ? 5 : 1)
-#else
-        , m_lineBreakHistory(InlineIterator(resolver.position()), 1)
-#endif
+        , m_lineBreak(resolver.position())
         , m_block(block)
         , m_lastObject(m_current.renderer())
         , m_nextObject(nullptr)
@@ -134,7 +130,7 @@
     }
 
     RenderObject* currentObject() { return m_current.renderer(); }
-    InlineIterator lineBreak() { return m_lineBreakHistory.current(); }
+    InlineIterator lineBreak() { return m_lineBreak; }
     LineWidth& lineWidth() { return m_width; }
     bool atEnd() { return m_atEnd; }
     
@@ -153,9 +149,6 @@
     bool canBreakAtThisPosition();
     void commitAndUpdateLineBreakIfNeeded();
     InlineIterator handleEndOfLine();
-#if ENABLE(CSS_TRAILING_WORD)
-    InlineIterator optimalLineBreakLocationForTrailingWord();
-#endif
     
     float computeAdditionalBetweenWordsWidth(RenderText&, TextLayout*, UChar, WordTrailingSpace&, HashSet<const Font*>& fallbackFonts, WordMeasurements&, const FontCascade&, bool isFixedPitch, unsigned lastSpace, float lastSpaceWordSpacing, float wordSpacingForWordMeasurement, unsigned offset);
 
@@ -162,7 +155,7 @@
     void clearLineBreakIfFitsOnLine(bool ignoringTrailingSpace = false)
     {
         if (m_width.fitsOnLine(ignoringTrailingSpace) || m_lastWS == WhiteSpace::NoWrap || m_hangsAtEnd)
-            m_lineBreakHistory.clear();
+            m_lineBreak.clear();
         m_hangsAtEnd = false;
     }
 
@@ -169,7 +162,7 @@
     void commitLineBreakClear()
     {
         m_width.commit();
-        m_lineBreakHistory.clear();
+        m_lineBreak.clear();
         m_hangsAtEnd = false;
     }
 
@@ -176,77 +169,16 @@
     void commitLineBreakAtCurrentWidth(RenderObject& object, unsigned offset = 0, Optional<unsigned> nextBreak = Optional<unsigned>())
     {
         m_width.commit();
-        m_lineBreakHistory.moveTo(object, offset, nextBreak);
+        m_lineBreak.moveTo(object, offset, nextBreak);
         m_hangsAtEnd = false;
     }
 
 private:
-    // This class keeps a sliding window of the past n locations for an InlineIterator.
-    class InlineIteratorHistory : private Vector<InlineIterator, 1> {
-    public:
-        InlineIteratorHistory() = delete;
-        InlineIteratorHistory(const InlineIterator& initial, size_t capacity)
-            : m_capacity(capacity)
-        {
-            ASSERT(capacity > 0);
-            this->append(initial);
-        }
-
-        void push(const WTF::Function<void(InlineIterator& modifyMe)>& updater)
-        {
-            ASSERT(!this->isEmpty());
-            if (m_capacity != 1)
-                this->insert(0, InlineIterator(this->at(0)));
-            updater(this->at(0));
-            if (m_capacity != 1)
-                this->resize(m_capacity);
-        }
-
-        void update(const WTF::Function<void(InlineIterator& modifyMe)>& updater)
-        {
-            ASSERT(!this->isEmpty());
-            updater(this->at(0));
-        }
-
-        RenderObject* renderer() const { return this->at(0).renderer(); }
-        unsigned offset() const { return this->at(0).offset(); }
-        Optional<unsigned> nextBreakablePosition() const { return this->at(0).nextBreakablePosition(); }
-        bool atTextParagraphSeparator() const { return this->at(0).atTextParagraphSeparator(); }
-        UChar previousInSameNode() const { return this->at(0).previousInSameNode(); }
-        const InlineIterator& get(size_t i) const { return this->at(i); };
-        const InlineIterator& current() const { return get(0); }
-        size_t historyLength() const { return this->size(); }
-
-        void moveTo(RenderObject& object, unsigned offset, Optional<unsigned> nextBreak = WTF::nullopt)
-        {
-            push([&](InlineIterator& modifyMe) {
-                modifyMe.moveTo(object, offset, nextBreak);
-            });
-        }
-
-        void increment()
-        {
-            update([](InlineIterator& modifyMe) {
-                modifyMe.increment();
-            });
-        }
-
-        void clear()
-        {
-            push([](InlineIterator& modifyMe) {
-                modifyMe.clear();
-            });
-        }
-
-    private:
-        const size_t m_capacity;
-    };
-
     LineBreaker& m_lineBreaker;
     InlineBidiResolver& m_resolver;
 
     InlineIterator m_current;
-    InlineIteratorHistory m_lineBreakHistory;
+    InlineIterator m_lineBreak;
     InlineIterator m_startOfIgnoredSpaces;
 
     RenderBlockFlow& m_block;
@@ -342,10 +274,8 @@
 {
     if (fitsOnLineOrHangsAtEnd()) {
         RenderObject& br = *m_current.renderer();
-        m_lineBreakHistory.push([&](InlineIterator& modifyMe) {
-            modifyMe.moveToStartOf(br);
-            modifyMe.increment();
-        });
+        m_lineBreak.moveToStartOf(br);
+        m_lineBreak.increment();
 
         // A <br> always breaks a line, so don't let the line be collapsed
         // away. Also, the space at the end of a line with a <br> does not
@@ -464,9 +394,9 @@
     // it after moving to next line (in clearFloats() func)
     if (m_floatsFitOnLine && m_width.fitsOnLineExcludingTrailingWhitespace(m_block.logicalWidthForFloat(floatingObject))) {
         m_lineBreaker.positionNewFloatOnLine(floatingObject, m_lastFloatFromPreviousLine, m_lineInfo, m_width);
-        if (m_lineBreakHistory.renderer() == m_current.renderer()) {
-            ASSERT(!m_lineBreakHistory.offset());
-            m_lineBreakHistory.increment();
+        if (m_lineBreak.renderer() == m_current.renderer()) {
+            ASSERT(!m_lineBreak.offset());
+            m_lineBreak.increment();
         }
     } else
         m_floatsFitOnLine = false;
@@ -752,9 +682,9 @@
         auto& combineRenderer = downcast<RenderCombineText>(*m_current.renderer());
         combineRenderer.combineTextIfNeeded();
         // The length of the renderer's text may have changed. Increment stale iterator positions
-        if (iteratorIsBeyondEndOfRenderCombineText(m_lineBreakHistory.current(), combineRenderer)) {
+        if (iteratorIsBeyondEndOfRenderCombineText(m_lineBreak, combineRenderer)) {
             ASSERT(iteratorIsBeyondEndOfRenderCombineText(m_resolver.position(), combineRenderer));
-            m_lineBreakHistory.increment();
+            m_lineBreak.increment();
             m_resolver.increment();
         }
     }
@@ -920,10 +850,8 @@
                     // additional whitespace.
                     if (!m_width.fitsOnLineIncludingExtraWidth(charWidth)) {
                         lineWasTooWide = true;
-                        m_lineBreakHistory.push([&](InlineIterator& modifyMe) {
-                            modifyMe.moveTo(renderObject, m_current.offset(), m_current.nextBreakablePosition());
-                            m_lineBreaker.skipTrailingWhitespace(modifyMe, m_lineInfo);
-                        });
+                        m_lineBreak.moveTo(renderObject, m_current.offset(), m_current.nextBreakablePosition());
+                        m_lineBreaker.skipTrailingWhitespace(m_lineBreak, m_lineInfo);
                     }
                 }
                 if ((lineWasTooWide || !m_width.fitsOnLine()) && !m_hangsAtEnd) {
@@ -931,28 +859,26 @@
                     // no more content, and a hyphenated single word would end up on a line by itself. This looks
                     // bad so just don't allow it.
                     if (canHyphenate && !m_width.fitsOnLine() && (m_nextObject || !renderText.containsOnlyHTMLWhitespace(m_current.offset(), renderText.text().length() - m_current.offset()) || isLineEmpty)) {
-                        m_lineBreakHistory.push([&](InlineIterator& modifyMe) {
-                            tryHyphenating(renderText, font, style.locale(), consecutiveHyphenatedLines, m_blockStyle.hyphenationLimitLines(), style.hyphenationLimitBefore(), style.hyphenationLimitAfter(), lastSpace, m_current.offset(), m_width.currentWidth() - additionalTempWidth, m_width.availableWidth(), isFixedPitch, m_collapseWhiteSpace, lastSpaceWordSpacing, modifyMe, m_current.nextBreakablePosition(), m_lineBreaker.m_hyphenated);
-                        });
+                        tryHyphenating(renderText, font, style.locale(), consecutiveHyphenatedLines, m_blockStyle.hyphenationLimitLines(), style.hyphenationLimitBefore(), style.hyphenationLimitAfter(), lastSpace, m_current.offset(), m_width.currentWidth() - additionalTempWidth, m_width.availableWidth(), isFixedPitch, m_collapseWhiteSpace, lastSpaceWordSpacing, m_lineBreak, m_current.nextBreakablePosition(), m_lineBreaker.m_hyphenated);
                         if (m_lineBreaker.m_hyphenated) {
                             m_atEnd = true;
                             return false;
                         }
                     }
-                    if (m_lineBreakHistory.atTextParagraphSeparator()) {
+                    if (m_lineBreak.atTextParagraphSeparator()) {
                         if (!stoppedIgnoringSpaces && m_current.offset() > 0)
                             ensureCharacterGetsLineBox(m_lineWhitespaceCollapsingState, m_current);
-                        m_lineBreakHistory.increment();
+                        m_lineBreak.increment();
                         m_lineInfo.setPreviousLineBrokeCleanly(true);
-                        wordMeasurement.endOffset = m_lineBreakHistory.offset();
+                        wordMeasurement.endOffset = m_lineBreak.offset();
                     }
                     // Check if the last breaking position is a soft-hyphen.
                     if (!hyphenated && style.hyphens() != Hyphens::None) {
                         Optional<unsigned> lastBreakingPositon;
                         const RenderObject* rendererAtBreakingPosition = nullptr;
-                        if (m_lineBreakHistory.offset() || m_lineBreakHistory.nextBreakablePosition()) {
-                            lastBreakingPositon = m_lineBreakHistory.offset();
-                            rendererAtBreakingPosition = m_lineBreakHistory.renderer();
+                        if (m_lineBreak.offset() || m_lineBreak.nextBreakablePosition()) {
+                            lastBreakingPositon = m_lineBreak.offset();
+                            rendererAtBreakingPosition = m_lineBreak.renderer();
                         } else if (m_current.nextBreakablePosition() && m_current.nextBreakablePosition().value() <= m_current.offset()) {
                             // We might just be right after the soft-hyphen
                             lastBreakingPositon = m_current.nextBreakablePosition().value();
@@ -973,9 +899,9 @@
                                 hyphenated = characterBeforeBreakingPosition.value() == softHyphen;
                         }
                     }
-                    if (m_lineBreakHistory.offset() && m_lineBreakHistory.offset() != (unsigned)wordMeasurement.endOffset && !wordMeasurement.width) {
+                    if (m_lineBreak.offset() && m_lineBreak.offset() != (unsigned)wordMeasurement.endOffset && !wordMeasurement.width) {
                         if (charWidth) {
-                            wordMeasurement.endOffset = m_lineBreakHistory.offset();
+                            wordMeasurement.endOffset = m_lineBreak.offset();
                             wordMeasurement.width = charWidth;
                         }
                     }
@@ -999,7 +925,7 @@
                 if (!stoppedIgnoringSpaces && m_current.offset())
                     ensureCharacterGetsLineBox(m_lineWhitespaceCollapsingState, m_current);
                 commitLineBreakAtCurrentWidth(renderObject, m_current.offset(), m_current.nextBreakablePosition());
-                m_lineBreakHistory.increment();
+                m_lineBreak.increment();
                 m_lineInfo.setPreviousLineBrokeCleanly(true);
                 return true;
             }
@@ -1016,7 +942,7 @@
             if (midWordBreak && !U16_IS_TRAIL(c) && !(U_GET_GC_MASK(c) & U_GC_M_MASK)) {
                 // Remember this as a breakable position in case
                 // adding the end width forces a break.
-                m_lineBreakHistory.moveTo(renderObject, m_current.offset(), m_current.nextBreakablePosition());
+                m_lineBreak.moveTo(renderObject, m_current.offset(), m_current.nextBreakablePosition());
                 midWordBreak &= (breakWords || breakAll);
             }
 
@@ -1081,7 +1007,7 @@
 
         if (!m_currentCharacterIsWS && previousCharacterIsWS) {
             if (m_autoWrap && m_currentStyle->breakOnlyAfterWhiteSpace())
-                m_lineBreakHistory.moveTo(renderObject, m_current.offset(), m_current.nextBreakablePosition());
+                m_lineBreak.moveTo(renderObject, m_current.offset(), m_current.nextBreakablePosition());
         }
 
         if (m_collapseWhiteSpace && m_currentCharacterIsSpace && !m_ignoringSpaces)
@@ -1124,13 +1050,10 @@
         // Don't try to hyphenate at the final break of a block, since this means there is
         // no more content, and a hyphenated single word would end up on a line by itself. This looks
         // bad so just don't allow it.
-        if (canHyphenate && (m_nextObject || isLineEmpty)) {
-            m_lineBreakHistory.push([&](InlineIterator& modifyMe) {
-                tryHyphenating(renderText, font, style.locale(), consecutiveHyphenatedLines, m_blockStyle.hyphenationLimitLines(), style.hyphenationLimitBefore(), style.hyphenationLimitAfter(), lastSpace, m_current.offset(), m_width.currentWidth() - additionalTempWidth, m_width.availableWidth(), isFixedPitch, m_collapseWhiteSpace, lastSpaceWordSpacing, modifyMe, m_current.nextBreakablePosition(), m_lineBreaker.m_hyphenated);
-            });
-        }
+        if (canHyphenate && (m_nextObject || isLineEmpty))
+            tryHyphenating(renderText, font, style.locale(), consecutiveHyphenatedLines, m_blockStyle.hyphenationLimitLines(), style.hyphenationLimitBefore(), style.hyphenationLimitAfter(), lastSpace, m_current.offset(), m_width.currentWidth() - additionalTempWidth, m_width.availableWidth(), isFixedPitch, m_collapseWhiteSpace, lastSpaceWordSpacing, m_lineBreak, m_current.nextBreakablePosition(), m_lineBreaker.m_hyphenated);
 
-        if (!hyphenated && m_lineBreakHistory.previousInSameNode() == softHyphen && style.hyphens() != Hyphens::None) {
+        if (!hyphenated && m_lineBreak.previousInSameNode() == softHyphen && style.hyphens() != Hyphens::None) {
             hyphenated = true;
             m_atEnd = true;
         }
@@ -1254,8 +1177,8 @@
 
 inline InlineIterator BreakingContext::handleEndOfLine()
 {
-    if (m_lineBreakHistory.current() == m_resolver.position()) {
-        if (!m_lineBreakHistory.renderer() || !m_lineBreakHistory.renderer()->isBR()) {
+    if (m_lineBreak == m_resolver.position()) {
+        if (!m_lineBreak.renderer() || !m_lineBreak.renderer()->isBR()) {
             // we just add as much as possible
             if (m_blockStyle.whiteSpace() == WhiteSpace::Pre && !m_current.offset()) {
                 if (m_lastObject)
@@ -1262,8 +1185,7 @@
                     commitLineBreakAtCurrentWidth(*m_lastObject, m_lastObject->isText() ? m_lastObject->length() : 0);
                 else
                     commitLineBreakClear();
-            }
-            else if (m_lineBreakHistory.renderer()) {
+            } else if (m_lineBreak.renderer()) {
                 // Don't ever break in the middle of a word if we can help it.
                 // There's no room at all. We just have to be on this line,
                 // even though we'll spill out.
@@ -1271,74 +1193,31 @@
             }
         }
         // make sure we consume at least one char/object.
-        if (m_lineBreakHistory.current() == m_resolver.position())
-            m_lineBreakHistory.increment();
+        if (m_lineBreak == m_resolver.position())
+            m_lineBreak.increment();
     } else if (!m_current.offset() && !m_width.committedWidth() && m_width.uncommittedWidth() && !m_hadUncommittedWidthBeforeCurrent) {
         // Do not push the current object to the next line, when this line has some content, but it is still considered empty.
         // Empty inline elements like <span></span> can produce such lines and now we just ignore these break opportunities
         // at the start of a line, if no width has been committed yet.
         // Behave as if it was actually empty and consume at least one object.
-        m_lineBreakHistory.increment();
+        m_lineBreak.increment();
     }
 
     // Sanity check our whitespace collapsing transitions.
-    TrailingObjects::CollapseFirstSpaceOrNot collapsed = checkWhitespaceCollapsingTransitions(m_lineWhitespaceCollapsingState, m_lineBreakHistory.current());
+    TrailingObjects::CollapseFirstSpaceOrNot collapsed = checkWhitespaceCollapsingTransitions(m_lineWhitespaceCollapsingState, m_lineBreak);
 
-    m_trailingObjects.updateWhitespaceCollapsingTransitionsForTrailingBoxes(m_lineWhitespaceCollapsingState, m_lineBreakHistory.current(), collapsed);
+    m_trailingObjects.updateWhitespaceCollapsingTransitionsForTrailingBoxes(m_lineWhitespaceCollapsingState, m_lineBreak, collapsed);
 
     // We might have made lineBreak an iterator that points past the end
     // of the object. Do this adjustment to make it point to the start
     // of the next object instead to avoid confusing the rest of the
     // code.
-    if (m_lineBreakHistory.offset()) {
-        m_lineBreakHistory.update([](InlineIterator& modifyMe) {
-            modifyMe.setOffset(modifyMe.offset() - 1);
-            modifyMe.increment();
-        });
+    if (m_lineBreak.offset()) {
+        m_lineBreak.setOffset(m_lineBreak.offset() - 1);
+        m_lineBreak.increment();
     }
 
-#if ENABLE(CSS_TRAILING_WORD)
-    if (m_blockStyle.trailingWord() == TrailingWord::PartiallyBalanced)
-        return optimalLineBreakLocationForTrailingWord();
-#endif
-    return m_lineBreakHistory.current();
+    return m_lineBreak;
 }
 
-#if ENABLE(CSS_TRAILING_WORD)
-inline InlineIterator BreakingContext::optimalLineBreakLocationForTrailingWord()
-{
-    const unsigned longTrailingWordLength = 20;
-    const float optimalTrailingLineRatio = 0.1;
-    InlineIterator lineBreak = m_lineBreakHistory.current();
-    if (!lineBreak.renderer() || !m_lineInfo.isFirstLine() || bidiNextSkippingEmptyInlines(*lineBreak.root(), lineBreak.renderer()) || !is<RenderText>(lineBreak.renderer()))
-        return lineBreak;
-    RenderText& renderText = downcast<RenderText>(*lineBreak.renderer());
-    // Don't even bother measuring if our remaining line has many characters
-    if (renderText.text().length() == lineBreak.offset() || renderText.text().length() - lineBreak.offset() > longTrailingWordLength)
-        return lineBreak;
-    bool canUseLineBreakShortcut = m_renderTextInfo.lineBreakIterator.mode() == LineBreakIteratorMode::Default;
-    bool breakNBSP = m_autoWrap && m_currentStyle->nbspMode() == NBSPMode::Space;
-    Optional<unsigned> nextBreakablePosition = lineBreak.nextBreakablePosition();
-    isBreakable(m_renderTextInfo.lineBreakIterator, lineBreak.offset() + 1, nextBreakablePosition, breakNBSP, canUseLineBreakShortcut, m_currentStyle->wordBreak() == WordBreak::KeepAll);
-    if (!nextBreakablePosition || nextBreakablePosition.value() != renderText.text().length())
-        return lineBreak;
-    const RenderStyle& style = lineStyle(renderText, m_lineInfo);
-    const FontCascade& font = style.fontCascade();
-    HashSet<const Font*> dummyFonts;
-    InlineIterator best = lineBreak;
-    for (size_t i = 1; i < m_lineBreakHistory.historyLength(); ++i) {
-        const InlineIterator& candidate = m_lineBreakHistory.get(i);
-        if (candidate.renderer() != lineBreak.renderer())
-            return best;
-        float width = textWidth(renderText, candidate.offset(), renderText.text().length() - candidate.offset(), font, 0, font.isFixedPitch(), m_collapseWhiteSpace, dummyFonts);
-        if (width > m_width.availableWidth())
-            return best;
-        if (width / m_width.availableWidth() > optimalTrailingLineRatio) // Subsequent line is long enough
-            return candidate;
-        best = candidate;
-    }
-    return best;
 }
-#endif
-
-}

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/style/RenderStyle.h (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/style/RenderStyle.h	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/style/RenderStyle.h	2019-05-17 10:14:31 UTC (rev 245439)
@@ -799,10 +799,6 @@
 
     bool shouldPlaceBlockDirectionScrollbarOnLeft() const;
 
-#if ENABLE(CSS_TRAILING_WORD)
-    TrailingWord trailingWord() const { return static_cast<TrailingWord>(m_rareInheritedData->trailingWord); }
-#endif
-
 #if ENABLE(APPLE_PAY)
     ApplePayButtonStyle applePayButtonStyle() const { return static_cast<ApplePayButtonStyle>(m_rareNonInheritedData->applePayButtonStyle); }
     ApplePayButtonType applePayButtonType() const { return static_cast<ApplePayButtonType>(m_rareNonInheritedData->applePayButtonType); }
@@ -1259,10 +1255,6 @@
 
     void setTextSecurity(TextSecurity security) { SET_VAR(m_rareInheritedData, textSecurity, static_cast<unsigned>(security)); }
 
-#if ENABLE(CSS_TRAILING_WORD)
-    void setTrailingWord(TrailingWord v) { SET_VAR(m_rareInheritedData, trailingWord, static_cast<unsigned>(v)); }
-#endif
-
 #if ENABLE(APPLE_PAY)
     void setApplePayButtonStyle(ApplePayButtonStyle style) { SET_VAR(m_rareNonInheritedData, applePayButtonStyle, static_cast<unsigned>(style)); }
     void setApplePayButtonType(ApplePayButtonType type) { SET_VAR(m_rareNonInheritedData, applePayButtonType, static_cast<unsigned>(type)); }
@@ -1630,10 +1622,6 @@
     static Length initialScrollPadding() { return Length(Fixed); }
 #endif
 
-#if ENABLE(CSS_TRAILING_WORD)
-    static TrailingWord initialTrailingWord() { return TrailingWord::Auto; }
-#endif
-
 #if ENABLE(APPLE_PAY)
     static ApplePayButtonStyle initialApplePayButtonStyle() { return ApplePayButtonStyle::Black; }
     static ApplePayButtonType initialApplePayButtonType() { return ApplePayButtonType::Plain; }

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/style/RenderStyleConstants.h (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/style/RenderStyleConstants.h	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/style/RenderStyleConstants.h	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1108,13 +1108,6 @@
 };
 #endif
 
-#if ENABLE(CSS_TRAILING_WORD)
-enum class TrailingWord : uint8_t {
-    Auto,
-    PartiallyBalanced
-};
-#endif
-
 #if ENABLE(APPLE_PAY)
 enum class ApplePayButtonStyle : uint8_t {
     White,

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/style/StyleRareInheritedData.cpp (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/style/StyleRareInheritedData.cpp	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/style/StyleRareInheritedData.cpp	2019-05-17 10:14:31 UTC (rev 245439)
@@ -131,9 +131,6 @@
 #if PLATFORM(IOS_FAMILY)
     , touchCalloutEnabled(RenderStyle::initialTouchCalloutEnabled())
 #endif
-#if ENABLE(CSS_TRAILING_WORD)
-    , trailingWord(static_cast<unsigned>(RenderStyle::initialTrailingWord()))
-#endif
     , hangingPunctuation(RenderStyle::initialHangingPunctuation().toRaw())
     , paintOrder(static_cast<unsigned>(RenderStyle::initialPaintOrder()))
     , capStyle(RenderStyle::initialCapStyle())
@@ -229,9 +226,6 @@
 #if PLATFORM(IOS_FAMILY)
     , touchCalloutEnabled(o.touchCalloutEnabled)
 #endif
-#if ENABLE(CSS_TRAILING_WORD)
-    , trailingWord(o.trailingWord)
-#endif
     , hangingPunctuation(o.hangingPunctuation)
     , paintOrder(o.paintOrder)
     , capStyle(o.capStyle)
@@ -354,9 +348,6 @@
         && textZoom == o.textZoom
         && lineSnap == o.lineSnap
         && lineAlign == o.lineAlign
-#if ENABLE(CSS_TRAILING_WORD)
-        && trailingWord == o.trailingWord
-#endif
         && hangingPunctuation == o.hangingPunctuation
         && paintOrder == o.paintOrder
         && capStyle == o.capStyle

Modified: releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/style/StyleRareInheritedData.h (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/style/StyleRareInheritedData.h	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebCore/rendering/style/StyleRareInheritedData.h	2019-05-17 10:14:31 UTC (rev 245439)
@@ -145,10 +145,6 @@
     unsigned touchCalloutEnabled : 1;
 #endif
 
-#if ENABLE(CSS_TRAILING_WORD)
-    unsigned trailingWord : 1;
-#endif
-
     unsigned hangingPunctuation : 4;
 
     unsigned paintOrder : 3; // PaintOrder

Modified: releases/WebKitGTK/webkit-2.24/Source/WebInspectorUI/ChangeLog (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebInspectorUI/ChangeLog	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebInspectorUI/ChangeLog	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1,3 +1,14 @@
+2019-04-03  Myles C. Maxfield  <[email protected]>
+
+        Remove support for -apple-trailing-word
+        https://bugs.webkit.org/show_bug.cgi?id=196525
+
+        Reviewed by Zalan Bujtas.
+
+        This CSS property is nonstandard and not used.
+
+        * UserInterface/Models/CSSKeywordCompletions.js:
+
 2019-02-21  Darin Adler  <[email protected]>
 
         Some refinements for Node and Document

Modified: releases/WebKitGTK/webkit-2.24/Source/WebInspectorUI/UserInterface/Models/CSSKeywordCompletions.js (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebInspectorUI/UserInterface/Models/CSSKeywordCompletions.js	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebInspectorUI/UserInterface/Models/CSSKeywordCompletions.js	2019-05-17 10:14:31 UTC (rev 245439)
@@ -155,7 +155,6 @@
 WI.CSSKeywordCompletions.InheritedProperties = new Set([
     // Compatibility (iOS 12): `inherited` didn't exist on `CSSPropertyInfo`
     "-apple-color-filter",
-    "-apple-trailing-word",
     "-webkit-animation-trigger",
     "-webkit-aspect-ratio",
     "-webkit-border-horizontal-spacing",
@@ -787,9 +786,6 @@
     "-apple-pay-button-type": [
         "plain", "buy", "set-up", "donate", "check-out", "book", "subscribe",
     ],
-    "-apple-trailing-word": [
-        "auto", "-webkit-partially-balanced",
-    ],
     "-webkit-alt": [
         "attr()",
     ],

Modified: releases/WebKitGTK/webkit-2.24/Source/WebKit/ChangeLog (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebKit/ChangeLog	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebKit/ChangeLog	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1,3 +1,14 @@
+2019-04-03  Myles C. Maxfield  <[email protected]>
+
+        Remove support for -apple-trailing-word
+        https://bugs.webkit.org/show_bug.cgi?id=196525
+
+        Reviewed by Zalan Bujtas.
+
+        This CSS property is nonstandard and not used.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2019-05-08  Alexander Mikhaylenko  <[email protected]>
 
         [GTK] Pinch Zooming has no maximum

Modified: releases/WebKitGTK/webkit-2.24/Source/WebKitLegacy/mac/ChangeLog (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/WebKitLegacy/mac/ChangeLog	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/WebKitLegacy/mac/ChangeLog	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1,3 +1,14 @@
+2019-04-03  Myles C. Maxfield  <[email protected]>
+
+        Remove support for -apple-trailing-word
+        https://bugs.webkit.org/show_bug.cgi?id=196525
+
+        Reviewed by Zalan Bujtas.
+
+        This CSS property is nonstandard and not used.
+
+        * Configurations/FeatureDefines.xcconfig:
+
 2019-02-21  Darin Adler  <[email protected]>
 
         Some refinements for Node and Document

Modified: releases/WebKitGTK/webkit-2.24/Source/cmake/WebKitFeatures.cmake (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Source/cmake/WebKitFeatures.cmake	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Source/cmake/WebKitFeatures.cmake	2019-05-17 10:14:31 UTC (rev 245439)
@@ -114,7 +114,6 @@
     WEBKIT_OPTION_DEFINE(ENABLE_CSS_PAINTING_API "Toggle CSS Painting API support" PRIVATE OFF)
     WEBKIT_OPTION_DEFINE(ENABLE_CSS_SCROLL_SNAP "Toggle CSS snap scroll support" PRIVATE OFF)
     WEBKIT_OPTION_DEFINE(ENABLE_CSS_SELECTORS_LEVEL4 "Toggle CSS Selectors Level 4 support" PRIVATE ON)
-    WEBKIT_OPTION_DEFINE(ENABLE_CSS_TRAILING_WORD "Toggle CSS trailing word support" PRIVATE OFF)
     WEBKIT_OPTION_DEFINE(ENABLE_CSS_TYPED_OM "Toggle CSS Typed OM support" PRIVATE OFF)
     WEBKIT_OPTION_DEFINE(ENABLE_CURSOR_VISIBILITY "Toggle cursor visibility support" PRIVATE OFF)
     WEBKIT_OPTION_DEFINE(ENABLE_CUSTOM_SCHEME_HANDLER "Toggle Custom Scheme Handler support" PRIVATE OFF)

Modified: releases/WebKitGTK/webkit-2.24/Tools/ChangeLog (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Tools/ChangeLog	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Tools/ChangeLog	2019-05-17 10:14:31 UTC (rev 245439)
@@ -1,3 +1,15 @@
+2019-04-03  Myles C. Maxfield  <[email protected]>
+
+        Remove support for -apple-trailing-word
+        https://bugs.webkit.org/show_bug.cgi?id=196525
+
+        Reviewed by Zalan Bujtas.
+
+        This CSS property is nonstandard and not used.
+
+        * Scripts/webkitperl/FeatureList.pm:
+        * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
+
 2019-05-09  Xan López  <[email protected]>
 
         [CMake] Detect SSE2 at compile time

Modified: releases/WebKitGTK/webkit-2.24/Tools/Scripts/webkitperl/FeatureList.pm (245438 => 245439)


--- releases/WebKitGTK/webkit-2.24/Tools/Scripts/webkitperl/FeatureList.pm	2019-05-17 10:14:14 UTC (rev 245438)
+++ releases/WebKitGTK/webkit-2.24/Tools/Scripts/webkitperl/FeatureList.pm	2019-05-17 10:14:31 UTC (rev 245439)
@@ -267,9 +267,6 @@
     { option => "css-selectors-level4", desc => "Toggle CSS Selectors Level 4 support",
       define => "ENABLE_CSS_SELECTORS_LEVEL4", value => \$cssSelectorsLevel4Support },
 
-    { option => "css-trailing-word", desc => "Toggle CSS trailing word support",
-      define => "ENABLE_CSS_TRAILING_WORD", value => \$cssTrailingWordSupport },
-
     { option => "css-typed-om", desc => "Toggle CSS Typed OM support",
       define => "ENABLE_CSS_TYPED_OM", value => \$cssTypedOMSupport },
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to