Rename WordBreak::Break to WordBreak::BreakWord
authormmaxfield@apple.com <mmaxfield@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 18 Jul 2018 18:10:08 +0000 (18:10 +0000)
committermmaxfield@apple.com <mmaxfield@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 18 Jul 2018 18:10:08 +0000 (18:10 +0000)
https://bugs.webkit.org/show_bug.cgi?id=187767

Reviewed by Simon Fraser.

These breaking properties are very confusing. There are:

1. word-break: break-all, a standard value that allows breaking after every
character.
2. word-break: break-word, a non-standard value which allows for breaking after
every character, but only if the word is too long for the available width (otherwise
it works the same as word-break: normal). This affects the min-content-size of the
text (and makes it equal to what it would be if word-break: break-all was
specified).
3. word-wrap: break-word, which is the same as word-break: break-word, but doesn't
affect the min-content-size of the text.
4. overflow-wrap: break-word, which is the same as word-wrap: break-word.

Because this is so confusing it's valuable for our internal enums to match the names
of the official CSS properties/values.

No new tests because there is no behavior change.

* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator WordBreak const):
* rendering/RenderText.cpp:
(WebCore::RenderText::computePreferredLogicalWidths):
* rendering/style/RenderStyle.h:
(WebCore::RenderStyle::breakWords const):
* rendering/style/RenderStyleConstants.h:

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

Source/WebCore/ChangeLog
Source/WebCore/css/CSSPrimitiveValueMappings.h
Source/WebCore/rendering/RenderText.cpp
Source/WebCore/rendering/style/RenderStyle.h
Source/WebCore/rendering/style/RenderStyleConstants.h

index be26c8e..72a9f9b 100644 (file)
@@ -1,3 +1,37 @@
+2018-07-18  Myles C. Maxfield  <mmaxfield@apple.com>
+
+        Rename WordBreak::Break to WordBreak::BreakWord
+        https://bugs.webkit.org/show_bug.cgi?id=187767
+
+        Reviewed by Simon Fraser.
+
+        These breaking properties are very confusing. There are:
+
+        1. word-break: break-all, a standard value that allows breaking after every
+        character.
+        2. word-break: break-word, a non-standard value which allows for breaking after
+        every character, but only if the word is too long for the available width (otherwise
+        it works the same as word-break: normal). This affects the min-content-size of the
+        text (and makes it equal to what it would be if word-break: break-all was
+        specified).
+        3. word-wrap: break-word, which is the same as word-break: break-word, but doesn't
+        affect the min-content-size of the text.
+        4. overflow-wrap: break-word, which is the same as word-wrap: break-word.
+
+        Because this is so confusing it's valuable for our internal enums to match the names
+        of the official CSS properties/values.
+
+        No new tests because there is no behavior change.
+
+        * css/CSSPrimitiveValueMappings.h:
+        (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+        (WebCore::CSSPrimitiveValue::operator WordBreak const):
+        * rendering/RenderText.cpp:
+        (WebCore::RenderText::computePreferredLogicalWidths):
+        * rendering/style/RenderStyle.h:
+        (WebCore::RenderStyle::breakWords const):
+        * rendering/style/RenderStyleConstants.h:
+
 2018-07-18  Wenson Hsieh  <wenson_hsieh@apple.com>
 
         Add SPI to defer running async script until after document load
index 424a05b..d14a451 100644 (file)
@@ -3087,7 +3087,7 @@ template<> inline CSSPrimitiveValue::CSSPrimitiveValue(WordBreak e)
     case WordBreak::KeepAll:
         m_value.valueID = CSSValueKeepAll;
         break;
-    case WordBreak::Break:
+    case WordBreak::BreakWord:
         m_value.valueID = CSSValueBreakWord;
         break;
     }
@@ -3103,7 +3103,7 @@ template<> inline CSSPrimitiveValue::operator WordBreak() const
     case CSSValueKeepAll:
         return WordBreak::KeepAll;
     case CSSValueBreakWord:
-        return WordBreak::Break;
+        return WordBreak::BreakWord;
     case CSSValueNormal:
         return WordBreak::Normal;
     default:
index ee9bbbf..ff05b72 100644 (file)
@@ -826,7 +826,7 @@ void RenderText::computePreferredLogicalWidths(float leadWidth, HashSet<const Fo
     // Note the deliberate omission of word-wrap and overflow-wrap from this breakAll check. Those
     // do not affect minimum preferred sizes. Note that break-word is a non-standard value for
     // word-break, but we support it as though it means break-all.
-    bool breakAll = (style.wordBreak() == WordBreak::BreakAll || style.wordBreak() == WordBreak::Break) && style.autoWrap();
+    bool breakAll = (style.wordBreak() == WordBreak::BreakAll || style.wordBreak() == WordBreak::BreakWord) && style.autoWrap();
     bool keepAllWords = style.wordBreak() == WordBreak::KeepAll;
     bool canUseLineBreakShortcut = iteratorMode == LineBreakIteratorMode::Default;
 
index 18ee86a..a10462c 100644 (file)
@@ -2044,7 +2044,7 @@ inline bool RenderStyle::breakOnlyAfterWhiteSpace() const
 
 inline bool RenderStyle::breakWords() const
 {
-    return wordBreak() == WordBreak::Break || overflowWrap() == OverflowWrap::Break;
+    return wordBreak() == WordBreak::BreakWord || overflowWrap() == OverflowWrap::Break;
 }
 
 inline bool RenderStyle::hasInlineColumnAxis() const
index 53349c2..bf1c21e 100644 (file)
@@ -516,7 +516,7 @@ enum class WordBreak : uint8_t {
     Normal,
     BreakAll,
     KeepAll,
-    Break
+    BreakWord
 };
 
 enum class OverflowWrap : uint8_t {