Title: [266691] trunk/Source/WebCore
Revision
266691
Author
wenson_hs...@apple.com
Date
2020-09-06 19:22:02 -0700 (Sun, 06 Sep 2020)

Log Message

Make `WebCore::WritingMode` an 8-bit enum class
https://bugs.webkit.org/show_bug.cgi?id=216233

Reviewed by Darin Adler.

Narrow WebCore::WritingMode to an 8-bit enum class; no change in behavior.

* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator WritingMode const):
* css/CSSProperty.cpp:
(WebCore::resolveToPhysicalProperty):
* dom/Element.cpp:
(WebCore::toScrollAlignmentForInlineDirection):
(WebCore::toScrollAlignmentForBlockDirection):
* page/FrameView.cpp:
(WebCore::paginationModeForRenderStyle):
* platform/text/WritingMode.h:
* rendering/GridBaselineAlignment.cpp:
(WebCore::BaselineGroup::isOppositeBlockFlow const):
(WebCore::BaselineGroup::isOrthogonalBlockFlow const):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::adjustBorderBoxRectForPainting):
(WebCore::RenderBlock::paintRectToClipOutFromBorder):
(WebCore::RenderBlock::borderTop const):
(WebCore::RenderBlock::borderLeft const):
(WebCore::RenderBlock::borderBottom const):
(WebCore::RenderBlock::borderRight const):
* rendering/RenderBox.cpp:
(WebCore::shouldFlipBeforeAfterMargins):
(WebCore::RenderBox::visualOverflowRectForPropagation const):
(WebCore::RenderBox::layoutOverflowRectForPropagation const):
* rendering/RenderDetailsMarker.cpp:
(WebCore::RenderDetailsMarker::orientation const):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::isLeftToRightFlow const):
(WebCore::RenderFlexibleBox::transformedWritingMode const):
(WebCore::RenderFlexibleBox::flowAwareBorderBefore const):
(WebCore::RenderFlexibleBox::flowAwareBorderAfter const):
(WebCore::RenderFlexibleBox::flowAwarePaddingBefore const):
(WebCore::RenderFlexibleBox::flowAwarePaddingAfter const):
(WebCore::RenderFlexibleBox::flowAwareMarginBeforeForChild const):
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::paddingTop const):
(WebCore::RenderTableCell::paddingBottom const):
(WebCore::RenderTableCell::paddingLeft const):
(WebCore::RenderTableCell::paddingRight const):
* rendering/RenderTreeAsText.cpp:
(WebCore::RenderTreeAsText::writeRenderObject):
* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseForStyle):
* rendering/shapes/ShapeOutsideInfo.cpp:
(WebCore::borderBeforeInWritingMode):
(WebCore::borderAndPaddingBeforeInWritingMode):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::RenderStyle):
(WebCore::RenderStyle::borderBefore const):
(WebCore::RenderStyle::borderAfter const):
(WebCore::RenderStyle::borderBeforeWidth const):
(WebCore::RenderStyle::borderAfterWidth const):
* rendering/style/RenderStyle.h:
(WebCore::RenderStyle::initialWritingMode):
(WebCore::RenderStyle::setWritingMode):
* style/StyleAdjuster.cpp:
(WebCore::Style::Adjuster::adjust const):
* style/StyleBuilderState.cpp:
(WebCore::Style::BuilderState::adjustStyleForInterCharacterRuby):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (266690 => 266691)


--- trunk/Source/WebCore/ChangeLog	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/ChangeLog	2020-09-07 02:22:02 UTC (rev 266691)
@@ -1,3 +1,73 @@
+2020-09-06  Wenson Hsieh  <wenson_hs...@apple.com>
+
+        Make `WebCore::WritingMode` an 8-bit enum class
+        https://bugs.webkit.org/show_bug.cgi?id=216233
+
+        Reviewed by Darin Adler.
+
+        Narrow WebCore::WritingMode to an 8-bit enum class; no change in behavior.
+
+        * css/CSSPrimitiveValueMappings.h:
+        (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+        (WebCore::CSSPrimitiveValue::operator WritingMode const):
+        * css/CSSProperty.cpp:
+        (WebCore::resolveToPhysicalProperty):
+        * dom/Element.cpp:
+        (WebCore::toScrollAlignmentForInlineDirection):
+        (WebCore::toScrollAlignmentForBlockDirection):
+        * page/FrameView.cpp:
+        (WebCore::paginationModeForRenderStyle):
+        * platform/text/WritingMode.h:
+        * rendering/GridBaselineAlignment.cpp:
+        (WebCore::BaselineGroup::isOppositeBlockFlow const):
+        (WebCore::BaselineGroup::isOrthogonalBlockFlow const):
+        * rendering/RenderBlock.cpp:
+        (WebCore::RenderBlock::adjustBorderBoxRectForPainting):
+        (WebCore::RenderBlock::paintRectToClipOutFromBorder):
+        (WebCore::RenderBlock::borderTop const):
+        (WebCore::RenderBlock::borderLeft const):
+        (WebCore::RenderBlock::borderBottom const):
+        (WebCore::RenderBlock::borderRight const):
+        * rendering/RenderBox.cpp:
+        (WebCore::shouldFlipBeforeAfterMargins):
+        (WebCore::RenderBox::visualOverflowRectForPropagation const):
+        (WebCore::RenderBox::layoutOverflowRectForPropagation const):
+        * rendering/RenderDetailsMarker.cpp:
+        (WebCore::RenderDetailsMarker::orientation const):
+        * rendering/RenderFlexibleBox.cpp:
+        (WebCore::RenderFlexibleBox::isLeftToRightFlow const):
+        (WebCore::RenderFlexibleBox::transformedWritingMode const):
+        (WebCore::RenderFlexibleBox::flowAwareBorderBefore const):
+        (WebCore::RenderFlexibleBox::flowAwareBorderAfter const):
+        (WebCore::RenderFlexibleBox::flowAwarePaddingBefore const):
+        (WebCore::RenderFlexibleBox::flowAwarePaddingAfter const):
+        (WebCore::RenderFlexibleBox::flowAwareMarginBeforeForChild const):
+        * rendering/RenderTableCell.cpp:
+        (WebCore::RenderTableCell::paddingTop const):
+        (WebCore::RenderTableCell::paddingBottom const):
+        (WebCore::RenderTableCell::paddingLeft const):
+        (WebCore::RenderTableCell::paddingRight const):
+        * rendering/RenderTreeAsText.cpp:
+        (WebCore::RenderTreeAsText::writeRenderObject):
+        * rendering/SimpleLineLayout.cpp:
+        (WebCore::SimpleLineLayout::canUseForStyle):
+        * rendering/shapes/ShapeOutsideInfo.cpp:
+        (WebCore::borderBeforeInWritingMode):
+        (WebCore::borderAndPaddingBeforeInWritingMode):
+        * rendering/style/RenderStyle.cpp:
+        (WebCore::RenderStyle::RenderStyle):
+        (WebCore::RenderStyle::borderBefore const):
+        (WebCore::RenderStyle::borderAfter const):
+        (WebCore::RenderStyle::borderBeforeWidth const):
+        (WebCore::RenderStyle::borderAfterWidth const):
+        * rendering/style/RenderStyle.h:
+        (WebCore::RenderStyle::initialWritingMode):
+        (WebCore::RenderStyle::setWritingMode):
+        * style/StyleAdjuster.cpp:
+        (WebCore::Style::Adjuster::adjust const):
+        * style/StyleBuilderState.cpp:
+        (WebCore::Style::BuilderState::adjustStyleForInterCharacterRuby):
+
 2020-09-06  Myles C. Maxfield  <mmaxfi...@apple.com>
 
         CTFontGetPhysicalSymbolicTraits() is faster than CTFontCopyPhysicalFont()/CTFontGetSymbolicTraits()

Modified: trunk/Source/WebCore/css/CSSPrimitiveValueMappings.h (266690 => 266691)


--- trunk/Source/WebCore/css/CSSPrimitiveValueMappings.h	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/css/CSSPrimitiveValueMappings.h	2020-09-07 02:22:02 UTC (rev 266691)
@@ -3193,16 +3193,16 @@
 {
     setPrimitiveUnitType(CSSUnitType::CSS_VALUE_ID);
     switch (e) {
-    case TopToBottomWritingMode:
+    case WritingMode::TopToBottom:
         m_value.valueID = CSSValueHorizontalTb;
         break;
-    case RightToLeftWritingMode:
+    case WritingMode::RightToLeft:
         m_value.valueID = CSSValueVerticalRl;
         break;
-    case LeftToRightWritingMode:
+    case WritingMode::LeftToRight:
         m_value.valueID = CSSValueVerticalLr;
         break;
-    case BottomToTopWritingMode:
+    case WritingMode::BottomToTop:
         m_value.valueID = CSSValueHorizontalBt;
         break;
     }
@@ -3218,21 +3218,21 @@
     case CSSValueLrTb:
     case CSSValueRl:
     case CSSValueRlTb:
-        return TopToBottomWritingMode;
+        return WritingMode::TopToBottom;
     case CSSValueVerticalRl:
     case CSSValueTb:
     case CSSValueTbRl:
-        return RightToLeftWritingMode;
+        return WritingMode::RightToLeft;
     case CSSValueVerticalLr:
-        return LeftToRightWritingMode;
+        return WritingMode::LeftToRight;
     case CSSValueHorizontalBt:
-        return BottomToTopWritingMode;
+        return WritingMode::BottomToTop;
     default:
         break;
     }
 
     ASSERT_NOT_REACHED();
-    return TopToBottomWritingMode;
+    return WritingMode::TopToBottom;
 }
 
 template<> inline CSSPrimitiveValue::CSSPrimitiveValue(TextCombine e)

Modified: trunk/Source/WebCore/css/CSSProperty.cpp (266690 => 266691)


--- trunk/Source/WebCore/css/CSSProperty.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/css/CSSProperty.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -61,7 +61,7 @@
 
 static CSSPropertyID resolveToPhysicalProperty(WritingMode writingMode, LogicalExtent logicalSide, const CSSPropertyID* properties)
 {
-    if (writingMode == TopToBottomWritingMode || writingMode == BottomToTopWritingMode)
+    if (writingMode == WritingMode::TopToBottom || writingMode == WritingMode::BottomToTop)
         return properties[logicalSide];
     return logicalSide == LogicalWidth ? properties[1] : properties[0];
 }

Modified: trunk/Source/WebCore/dom/Element.cpp (266690 => 266691)


--- trunk/Source/WebCore/dom/Element.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/dom/Element.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -747,12 +747,12 @@
     switch (position.valueOr(ScrollLogicalPosition::Nearest)) {
     case ScrollLogicalPosition::Start: {
         switch (writingMode) {
-        case TopToBottomWritingMode:
-        case BottomToTopWritingMode: {
+        case WritingMode::TopToBottom:
+        case WritingMode::BottomToTop: {
             return isLTR ? ScrollAlignment::alignLeftAlways : ScrollAlignment::alignRightAlways;
         }
-        case LeftToRightWritingMode:
-        case RightToLeftWritingMode: {
+        case WritingMode::LeftToRight:
+        case WritingMode::RightToLeft: {
             return isLTR ? ScrollAlignment::alignTopAlways : ScrollAlignment::alignBottomAlways;
         }
         default:
@@ -764,12 +764,12 @@
         return ScrollAlignment::alignCenterAlways;
     case ScrollLogicalPosition::End: {
         switch (writingMode) {
-        case TopToBottomWritingMode:
-        case BottomToTopWritingMode: {
+        case WritingMode::TopToBottom:
+        case WritingMode::BottomToTop: {
             return isLTR ? ScrollAlignment::alignRightAlways : ScrollAlignment::alignLeftAlways;
         }
-        case LeftToRightWritingMode:
-        case RightToLeftWritingMode: {
+        case WritingMode::LeftToRight:
+        case WritingMode::RightToLeft: {
             return isLTR ? ScrollAlignment::alignBottomAlways : ScrollAlignment::alignTopAlways;
         }
         default:
@@ -790,13 +790,13 @@
     switch (position.valueOr(ScrollLogicalPosition::Start)) {
     case ScrollLogicalPosition::Start: {
         switch (writingMode) {
-        case TopToBottomWritingMode:
+        case WritingMode::TopToBottom:
             return ScrollAlignment::alignTopAlways;
-        case BottomToTopWritingMode:
+        case WritingMode::BottomToTop:
             return ScrollAlignment::alignBottomAlways;
-        case LeftToRightWritingMode:
+        case WritingMode::LeftToRight:
             return ScrollAlignment::alignLeftAlways;
-        case RightToLeftWritingMode:
+        case WritingMode::RightToLeft:
             return ScrollAlignment::alignRightAlways;
         default:
             ASSERT_NOT_REACHED();
@@ -807,13 +807,13 @@
         return ScrollAlignment::alignCenterAlways;
     case ScrollLogicalPosition::End: {
         switch (writingMode) {
-        case TopToBottomWritingMode:
+        case WritingMode::TopToBottom:
             return ScrollAlignment::alignBottomAlways;
-        case BottomToTopWritingMode:
+        case WritingMode::BottomToTop:
             return ScrollAlignment::alignTopAlways;
-        case LeftToRightWritingMode:
+        case WritingMode::LeftToRight:
             return ScrollAlignment::alignRightAlways;
-        case RightToLeftWritingMode:
+        case WritingMode::RightToLeft:
             return ScrollAlignment::alignLeftAlways;
         default:
             ASSERT_NOT_REACHED();

Modified: trunk/Source/WebCore/page/FrameView.cpp (266690 => 266691)


--- trunk/Source/WebCore/page/FrameView.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/page/FrameView.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -167,7 +167,7 @@
     // is horizontal, then we use TextDirection to choose between those options. If the WritingMode
     // is vertical, then the direction of the verticality dictates the choice.
     if (overflow == Overflow::PagedX) {
-        if ((isHorizontalWritingMode && textDirection == TextDirection::LTR) || writingMode == LeftToRightWritingMode)
+        if ((isHorizontalWritingMode && textDirection == TextDirection::LTR) || writingMode == WritingMode::LeftToRight)
             return Pagination::LeftToRightPaginated;
         return Pagination::RightToLeftPaginated;
     }
@@ -175,7 +175,7 @@
     // paged-y always corresponds to TopToBottomPaginated or BottomToTopPaginated. If the WritingMode
     // is horizontal, then the direction of the horizontality dictates the choice. If the WritingMode
     // is vertical, then we use TextDirection to choose between those options. 
-    if (writingMode == TopToBottomWritingMode || (!isHorizontalWritingMode && textDirection == TextDirection::RTL))
+    if (writingMode == WritingMode::TopToBottom || (!isHorizontalWritingMode && textDirection == TextDirection::RTL))
         return Pagination::TopToBottomPaginated;
     return Pagination::BottomToTopPaginated;
 }

Modified: trunk/Source/WebCore/platform/text/WritingMode.h (266690 => 266691)


--- trunk/Source/WebCore/platform/text/WritingMode.h	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/platform/text/WritingMode.h	2020-09-07 02:22:02 UTC (rev 266691)
@@ -42,26 +42,26 @@
     return direction == TextDirection::LTR;
 }
 
-enum WritingMode {
-    TopToBottomWritingMode = 0, // horizontal-tb
-    BottomToTopWritingMode = 1, // horizontal-bt
-    LeftToRightWritingMode = 2, // vertical-lr
-    RightToLeftWritingMode = 3, // vertical-rl
+enum class WritingMode : uint8_t {
+    TopToBottom = 0, // horizontal-tb
+    BottomToTop = 1, // horizontal-bt
+    LeftToRight = 2, // vertical-lr
+    RightToLeft = 3, // vertical-rl
 };
 
-#define MAKE_TEXT_FLOW(writingMode, direction)  ((writingMode) << 1 | static_cast<unsigned>(direction))
+#define MAKE_TEXT_FLOW(writingMode, direction)  (static_cast<unsigned>(writingMode) << 1 | static_cast<unsigned>(direction))
 
 // Define the text flow in terms of the writing mode and the text direction. The first
 // part is the line growing direction and the second part is the block growing direction.
 enum TextFlow {
-    InlineEastBlockSouth = MAKE_TEXT_FLOW(TopToBottomWritingMode, TextDirection::LTR),
-    InlineWestBlockSouth = MAKE_TEXT_FLOW(TopToBottomWritingMode, TextDirection::RTL),
-    InlineEastBlockNorth = MAKE_TEXT_FLOW(BottomToTopWritingMode, TextDirection::LTR),
-    InlineWestBlockNorth = MAKE_TEXT_FLOW(BottomToTopWritingMode, TextDirection::RTL),
-    InlineSouthBlockEast = MAKE_TEXT_FLOW(LeftToRightWritingMode, TextDirection::LTR),
-    InlineSouthBlockWest = MAKE_TEXT_FLOW(LeftToRightWritingMode, TextDirection::RTL),
-    InlineNorthBlockEast = MAKE_TEXT_FLOW(RightToLeftWritingMode, TextDirection::LTR),
-    InlineNorthBlockWest = MAKE_TEXT_FLOW(RightToLeftWritingMode, TextDirection::RTL)
+    InlineEastBlockSouth = MAKE_TEXT_FLOW(WritingMode::TopToBottom, TextDirection::LTR),
+    InlineWestBlockSouth = MAKE_TEXT_FLOW(WritingMode::TopToBottom, TextDirection::RTL),
+    InlineEastBlockNorth = MAKE_TEXT_FLOW(WritingMode::BottomToTop, TextDirection::LTR),
+    InlineWestBlockNorth = MAKE_TEXT_FLOW(WritingMode::BottomToTop, TextDirection::RTL),
+    InlineSouthBlockEast = MAKE_TEXT_FLOW(WritingMode::LeftToRight, TextDirection::LTR),
+    InlineSouthBlockWest = MAKE_TEXT_FLOW(WritingMode::LeftToRight, TextDirection::RTL),
+    InlineNorthBlockEast = MAKE_TEXT_FLOW(WritingMode::RightToLeft, TextDirection::LTR),
+    InlineNorthBlockWest = MAKE_TEXT_FLOW(WritingMode::RightToLeft, TextDirection::RTL)
 };
 
 inline TextFlow makeTextFlow(WritingMode writingMode, TextDirection direction)

Modified: trunk/Source/WebCore/rendering/GridBaselineAlignment.cpp (266690 => 266691)


--- trunk/Source/WebCore/rendering/GridBaselineAlignment.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/rendering/GridBaselineAlignment.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -176,12 +176,12 @@
 bool BaselineGroup::isOppositeBlockFlow(WritingMode blockFlow) const
 {
     switch (blockFlow) {
-    case WritingMode::TopToBottomWritingMode:
+    case WritingMode::TopToBottom:
         return false;
-    case WritingMode::LeftToRightWritingMode:
-        return m_blockFlow == WritingMode::RightToLeftWritingMode;
-    case WritingMode::RightToLeftWritingMode:
-        return m_blockFlow == WritingMode::LeftToRightWritingMode;
+    case WritingMode::LeftToRight:
+        return m_blockFlow == WritingMode::RightToLeft;
+    case WritingMode::RightToLeft:
+        return m_blockFlow == WritingMode::LeftToRight;
     default:
         ASSERT_NOT_REACHED();
         return false;
@@ -191,11 +191,11 @@
 bool BaselineGroup::isOrthogonalBlockFlow(WritingMode blockFlow) const
 {
     switch (blockFlow) {
-    case WritingMode::TopToBottomWritingMode:
-        return m_blockFlow != WritingMode::TopToBottomWritingMode;
-    case WritingMode::LeftToRightWritingMode:
-    case WritingMode::RightToLeftWritingMode:
-        return m_blockFlow == WritingMode::TopToBottomWritingMode;
+    case WritingMode::TopToBottom:
+        return m_blockFlow != WritingMode::TopToBottom;
+    case WritingMode::LeftToRight:
+    case WritingMode::RightToLeft:
+        return m_blockFlow == WritingMode::TopToBottom;
     default:
         ASSERT_NOT_REACHED();
         return false;

Modified: trunk/Source/WebCore/rendering/RenderBlock.cpp (266690 => 266691)


--- trunk/Source/WebCore/rendering/RenderBlock.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/rendering/RenderBlock.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -3348,12 +3348,12 @@
     if (style().isHorizontalWritingMode()) {
         LayoutUnit yOff = std::max(0_lu, (legend->height() - RenderBox::borderBefore()) / 2);
         paintRect.setHeight(paintRect.height() - yOff);
-        if (style().writingMode() == TopToBottomWritingMode)
+        if (style().writingMode() == WritingMode::TopToBottom)
             paintRect.setY(paintRect.y() + yOff);
     } else {
         LayoutUnit xOff = std::max(0_lu, (legend->width() - RenderBox::borderBefore()) / 2);
         paintRect.setWidth(paintRect.width() - xOff);
-        if (style().writingMode() == LeftToRightWritingMode)
+        if (style().writingMode() == WritingMode::LeftToRight)
             paintRect.setX(paintRect.x() + xOff);
     }
 }
@@ -3370,11 +3370,11 @@
     LayoutUnit borderExtent = RenderBox::borderBefore();
     if (style().isHorizontalWritingMode()) {
         clipRect.setX(paintRect.x() + legend->x());
-        clipRect.setY(style().writingMode() == TopToBottomWritingMode ? paintRect.y() : paintRect.y() + paintRect.height() - borderExtent);
+        clipRect.setY(style().writingMode() == WritingMode::TopToBottom ? paintRect.y() : paintRect.y() + paintRect.height() - borderExtent);
         clipRect.setWidth(legend->width());
         clipRect.setHeight(borderExtent);
     } else {
-        clipRect.setX(style().writingMode() == LeftToRightWritingMode ? paintRect.x() : paintRect.x() + paintRect.width() - borderExtent);
+        clipRect.setX(style().writingMode() == WritingMode::LeftToRight ? paintRect.x() : paintRect.x() + paintRect.width() - borderExtent);
         clipRect.setY(paintRect.y() + legend->y());
         clipRect.setWidth(borderExtent);
         clipRect.setHeight(legend->height());
@@ -3401,7 +3401,7 @@
 
 LayoutUnit RenderBlock::borderTop() const
 {
-    if (style().writingMode() != TopToBottomWritingMode || !intrinsicBorderForFieldset())
+    if (style().writingMode() != WritingMode::TopToBottom || !intrinsicBorderForFieldset())
         return RenderBox::borderTop();
     return RenderBox::borderTop() + intrinsicBorderForFieldset();
 }
@@ -3408,7 +3408,7 @@
 
 LayoutUnit RenderBlock::borderLeft() const
 {
-    if (style().writingMode() != LeftToRightWritingMode || !intrinsicBorderForFieldset())
+    if (style().writingMode() != WritingMode::LeftToRight || !intrinsicBorderForFieldset())
         return RenderBox::borderLeft();
     return RenderBox::borderLeft() + intrinsicBorderForFieldset();
 }
@@ -3415,7 +3415,7 @@
 
 LayoutUnit RenderBlock::borderBottom() const
 {
-    if (style().writingMode() != BottomToTopWritingMode || !intrinsicBorderForFieldset())
+    if (style().writingMode() != WritingMode::BottomToTop || !intrinsicBorderForFieldset())
         return RenderBox::borderBottom();
     return RenderBox::borderBottom() + intrinsicBorderForFieldset();
 }
@@ -3422,7 +3422,7 @@
 
 LayoutUnit RenderBlock::borderRight() const
 {
-    if (style().writingMode() != RightToLeftWritingMode || !intrinsicBorderForFieldset())
+    if (style().writingMode() != WritingMode::RightToLeft || !intrinsicBorderForFieldset())
         return RenderBox::borderRight();
     return RenderBox::borderRight() + intrinsicBorderForFieldset();
 }

Modified: trunk/Source/WebCore/rendering/RenderBox.cpp (266690 => 266691)


--- trunk/Source/WebCore/rendering/RenderBox.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/rendering/RenderBox.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -2756,17 +2756,17 @@
     WritingMode childWritingMode = childStyle->writingMode();
     bool shouldFlip = false;
     switch (containingBlockStyle.writingMode()) {
-    case TopToBottomWritingMode:
-        shouldFlip = (childWritingMode == RightToLeftWritingMode);
+    case WritingMode::TopToBottom:
+        shouldFlip = (childWritingMode == WritingMode::RightToLeft);
         break;
-    case BottomToTopWritingMode:
-        shouldFlip = (childWritingMode == RightToLeftWritingMode);
+    case WritingMode::BottomToTop:
+        shouldFlip = (childWritingMode == WritingMode::RightToLeft);
         break;
-    case RightToLeftWritingMode:
-        shouldFlip = (childWritingMode == BottomToTopWritingMode);
+    case WritingMode::RightToLeft:
+        shouldFlip = (childWritingMode == WritingMode::BottomToTop);
         break;
-    case LeftToRightWritingMode:
-        shouldFlip = (childWritingMode == BottomToTopWritingMode);
+    case WritingMode::LeftToRight:
+        shouldFlip = (childWritingMode == WritingMode::BottomToTop);
         break;
     }
 
@@ -4817,9 +4817,9 @@
     
     // We are putting ourselves into our parent's coordinate space.  If there is a flipped block mismatch
     // in a particular axis, then we have to flip the rect along that axis.
-    if (style().writingMode() == RightToLeftWritingMode || parentStyle->writingMode() == RightToLeftWritingMode)
+    if (style().writingMode() == WritingMode::RightToLeft || parentStyle->writingMode() == WritingMode::RightToLeft)
         rect.setX(width() - rect.maxX());
-    else if (style().writingMode() == BottomToTopWritingMode || parentStyle->writingMode() == BottomToTopWritingMode)
+    else if (style().writingMode() == WritingMode::BottomToTop || parentStyle->writingMode() == WritingMode::BottomToTop)
         rect.setY(height() - rect.maxY());
 
     return rect;
@@ -4868,9 +4868,9 @@
     
     // We are putting ourselves into our parent's coordinate space.  If there is a flipped block mismatch
     // in a particular axis, then we have to flip the rect along that axis.
-    if (style().writingMode() == RightToLeftWritingMode || parentStyle->writingMode() == RightToLeftWritingMode)
+    if (style().writingMode() == WritingMode::RightToLeft || parentStyle->writingMode() == WritingMode::RightToLeft)
         rect.setX(width() - rect.maxX());
-    else if (style().writingMode() == BottomToTopWritingMode || parentStyle->writingMode() == BottomToTopWritingMode)
+    else if (style().writingMode() == WritingMode::BottomToTop || parentStyle->writingMode() == WritingMode::BottomToTop)
         rect.setY(height() - rect.maxY());
 
     return rect;

Modified: trunk/Source/WebCore/rendering/RenderDetailsMarker.cpp (266690 => 266691)


--- trunk/Source/WebCore/rendering/RenderDetailsMarker.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/rendering/RenderDetailsMarker.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -76,19 +76,19 @@
 RenderDetailsMarker::Orientation RenderDetailsMarker::orientation() const
 {
     switch (style().writingMode()) {
-    case TopToBottomWritingMode:
+    case WritingMode::TopToBottom:
         if (style().isLeftToRightDirection())
             return isOpen() ? Down : Right;
         return isOpen() ? Down : Left;
-    case RightToLeftWritingMode:
+    case WritingMode::RightToLeft:
         if (style().isLeftToRightDirection())
             return isOpen() ? Left : Down;
         return isOpen() ? Left : Up;
-    case LeftToRightWritingMode:
+    case WritingMode::LeftToRight:
         if (style().isLeftToRightDirection())
             return isOpen() ? Right : Down;
         return isOpen() ? Right : Up;
-    case BottomToTopWritingMode:
+    case WritingMode::BottomToTop:
         if (style().isLeftToRightDirection())
             return isOpen() ? Up : Right;
         return isOpen() ? Up : Left;

Modified: trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp (266690 => 266691)


--- trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -429,7 +429,7 @@
 bool RenderFlexibleBox::isLeftToRightFlow() const
 {
     if (isColumnFlow())
-        return style().writingMode() == TopToBottomWritingMode || style().writingMode() == LeftToRightWritingMode;
+        return style().writingMode() == WritingMode::TopToBottom || style().writingMode() == WritingMode::LeftToRight;
     return style().isLeftToRightDirection() ^ (style().flexDirection() == FlexDirection::RowReverse);
 }
 
@@ -596,15 +596,15 @@
         return mode;
     
     switch (mode) {
-    case TopToBottomWritingMode:
-    case BottomToTopWritingMode:
-        return style().isLeftToRightDirection() ? LeftToRightWritingMode : RightToLeftWritingMode;
-    case LeftToRightWritingMode:
-    case RightToLeftWritingMode:
-        return style().isLeftToRightDirection() ? TopToBottomWritingMode : BottomToTopWritingMode;
+    case WritingMode::TopToBottom:
+    case WritingMode::BottomToTop:
+        return style().isLeftToRightDirection() ? WritingMode::LeftToRight : WritingMode::RightToLeft;
+    case WritingMode::LeftToRight:
+    case WritingMode::RightToLeft:
+        return style().isLeftToRightDirection() ? WritingMode::TopToBottom : WritingMode::BottomToTop;
     }
     ASSERT_NOT_REACHED();
-    return TopToBottomWritingMode;
+    return WritingMode::TopToBottom;
 }
 
 LayoutUnit RenderFlexibleBox::flowAwareBorderStart() const
@@ -624,13 +624,13 @@
 LayoutUnit RenderFlexibleBox::flowAwareBorderBefore() const
 {
     switch (transformedWritingMode()) {
-    case TopToBottomWritingMode:
+    case WritingMode::TopToBottom:
         return borderTop();
-    case BottomToTopWritingMode:
+    case WritingMode::BottomToTop:
         return borderBottom();
-    case LeftToRightWritingMode:
+    case WritingMode::LeftToRight:
         return borderLeft();
-    case RightToLeftWritingMode:
+    case WritingMode::RightToLeft:
         return borderRight();
     }
     ASSERT_NOT_REACHED();
@@ -640,13 +640,13 @@
 LayoutUnit RenderFlexibleBox::flowAwareBorderAfter() const
 {
     switch (transformedWritingMode()) {
-    case TopToBottomWritingMode:
+    case WritingMode::TopToBottom:
         return borderBottom();
-    case BottomToTopWritingMode:
+    case WritingMode::BottomToTop:
         return borderTop();
-    case LeftToRightWritingMode:
+    case WritingMode::LeftToRight:
         return borderRight();
-    case RightToLeftWritingMode:
+    case WritingMode::RightToLeft:
         return borderLeft();
     }
     ASSERT_NOT_REACHED();
@@ -670,13 +670,13 @@
 LayoutUnit RenderFlexibleBox::flowAwarePaddingBefore() const
 {
     switch (transformedWritingMode()) {
-    case TopToBottomWritingMode:
+    case WritingMode::TopToBottom:
         return paddingTop();
-    case BottomToTopWritingMode:
+    case WritingMode::BottomToTop:
         return paddingBottom();
-    case LeftToRightWritingMode:
+    case WritingMode::LeftToRight:
         return paddingLeft();
-    case RightToLeftWritingMode:
+    case WritingMode::RightToLeft:
         return paddingRight();
     }
     ASSERT_NOT_REACHED();
@@ -686,13 +686,13 @@
 LayoutUnit RenderFlexibleBox::flowAwarePaddingAfter() const
 {
     switch (transformedWritingMode()) {
-    case TopToBottomWritingMode:
+    case WritingMode::TopToBottom:
         return paddingBottom();
-    case BottomToTopWritingMode:
+    case WritingMode::BottomToTop:
         return paddingTop();
-    case LeftToRightWritingMode:
+    case WritingMode::LeftToRight:
         return paddingRight();
-    case RightToLeftWritingMode:
+    case WritingMode::RightToLeft:
         return paddingLeft();
     }
     ASSERT_NOT_REACHED();
@@ -716,13 +716,13 @@
 LayoutUnit RenderFlexibleBox::flowAwareMarginBeforeForChild(const RenderBox& child) const
 {
     switch (transformedWritingMode()) {
-    case TopToBottomWritingMode:
+    case WritingMode::TopToBottom:
         return child.marginTop();
-    case BottomToTopWritingMode:
+    case WritingMode::BottomToTop:
         return child.marginBottom();
-    case LeftToRightWritingMode:
+    case WritingMode::LeftToRight:
         return child.marginLeft();
-    case RightToLeftWritingMode:
+    case WritingMode::RightToLeft:
         return child.marginRight();
     }
     ASSERT_NOT_REACHED();

Modified: trunk/Source/WebCore/rendering/RenderTableCell.cpp (266690 => 266691)


--- trunk/Source/WebCore/rendering/RenderTableCell.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/rendering/RenderTableCell.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -293,7 +293,7 @@
     LayoutUnit result = computedCSSPaddingTop();
     if (!isHorizontalWritingMode())
         return result;
-    return result + (style().writingMode() == TopToBottomWritingMode ? intrinsicPaddingBefore() : intrinsicPaddingAfter());
+    return result + (style().writingMode() == WritingMode::TopToBottom ? intrinsicPaddingBefore() : intrinsicPaddingAfter());
 }
 
 LayoutUnit RenderTableCell::paddingBottom() const
@@ -301,7 +301,7 @@
     LayoutUnit result = computedCSSPaddingBottom();
     if (!isHorizontalWritingMode())
         return result;
-    return result + (style().writingMode() == TopToBottomWritingMode ? intrinsicPaddingAfter() : intrinsicPaddingBefore());
+    return result + (style().writingMode() == WritingMode::TopToBottom ? intrinsicPaddingAfter() : intrinsicPaddingBefore());
 }
 
 LayoutUnit RenderTableCell::paddingLeft() const
@@ -309,7 +309,7 @@
     LayoutUnit result = computedCSSPaddingLeft();
     if (isHorizontalWritingMode())
         return result;
-    return result + (style().writingMode() == LeftToRightWritingMode ? intrinsicPaddingBefore() : intrinsicPaddingAfter());
+    return result + (style().writingMode() == WritingMode::LeftToRight ? intrinsicPaddingBefore() : intrinsicPaddingAfter());
 }
 
 LayoutUnit RenderTableCell::paddingRight() const
@@ -317,7 +317,7 @@
     LayoutUnit result = computedCSSPaddingRight();
     if (isHorizontalWritingMode())
         return result;
-    return result + (style().writingMode() == LeftToRightWritingMode ? intrinsicPaddingAfter() : intrinsicPaddingBefore());
+    return result + (style().writingMode() == WritingMode::LeftToRight ? intrinsicPaddingAfter() : intrinsicPaddingBefore());
 }
 
 LayoutUnit RenderTableCell::paddingBefore() const

Modified: trunk/Source/WebCore/rendering/RenderTreeAsText.cpp (266690 => 266691)


--- trunk/Source/WebCore/rendering/RenderTreeAsText.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/rendering/RenderTreeAsText.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -272,13 +272,13 @@
         LayoutUnit borderLeft = box.borderLeft();
         if (box.isFieldset()) {
             const auto& block = downcast<RenderBlock>(box);
-            if (o.style().writingMode() == TopToBottomWritingMode)
+            if (o.style().writingMode() == WritingMode::TopToBottom)
                 borderTop -= block.intrinsicBorderForFieldset();
-            else if (o.style().writingMode() == BottomToTopWritingMode)
+            else if (o.style().writingMode() == WritingMode::BottomToTop)
                 borderBottom -= block.intrinsicBorderForFieldset();
-            else if (o.style().writingMode() == LeftToRightWritingMode)
+            else if (o.style().writingMode() == WritingMode::LeftToRight)
                 borderLeft -= block.intrinsicBorderForFieldset();
-            else if (o.style().writingMode() == RightToLeftWritingMode)
+            else if (o.style().writingMode() == WritingMode::RightToLeft)
                 borderRight -= block.intrinsicBorderForFieldset();
             
         }

Modified: trunk/Source/WebCore/rendering/SimpleLineLayout.cpp (266690 => 266691)


--- trunk/Source/WebCore/rendering/SimpleLineLayout.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/rendering/SimpleLineLayout.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -210,7 +210,7 @@
         SET_REASON_AND_RETURN_IF_NEEDED(FlowIsNotLTR, reasons, includeReasons);
     if (!(style.lineBoxContain().contains(LineBoxContain::Block)))
         SET_REASON_AND_RETURN_IF_NEEDED(FlowHasLineBoxContainProperty, reasons, includeReasons);
-    if (style.writingMode() != TopToBottomWritingMode)
+    if (style.writingMode() != WritingMode::TopToBottom)
         SET_REASON_AND_RETURN_IF_NEEDED(FlowIsNotTopToBottom, reasons, includeReasons);
     if (style.lineBreak() != LineBreak::Auto)
         SET_REASON_AND_RETURN_IF_NEEDED(FlowHasLineBreak, reasons, includeReasons);

Modified: trunk/Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp (266690 => 266691)


--- trunk/Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -199,10 +199,10 @@
 static inline LayoutUnit borderBeforeInWritingMode(const RenderBox& renderer, WritingMode writingMode)
 {
     switch (writingMode) {
-    case TopToBottomWritingMode: return renderer.borderTop();
-    case BottomToTopWritingMode: return renderer.borderBottom();
-    case LeftToRightWritingMode: return renderer.borderLeft();
-    case RightToLeftWritingMode: return renderer.borderRight();
+    case WritingMode::TopToBottom: return renderer.borderTop();
+    case WritingMode::BottomToTop: return renderer.borderBottom();
+    case WritingMode::LeftToRight: return renderer.borderLeft();
+    case WritingMode::RightToLeft: return renderer.borderRight();
     }
 
     ASSERT_NOT_REACHED();
@@ -212,10 +212,10 @@
 static inline LayoutUnit borderAndPaddingBeforeInWritingMode(const RenderBox& renderer, WritingMode writingMode)
 {
     switch (writingMode) {
-    case TopToBottomWritingMode: return renderer.borderTop() + renderer.paddingTop();
-    case BottomToTopWritingMode: return renderer.borderBottom() + renderer.paddingBottom();
-    case LeftToRightWritingMode: return renderer.borderLeft() + renderer.paddingLeft();
-    case RightToLeftWritingMode: return renderer.borderRight() + renderer.paddingRight();
+    case WritingMode::TopToBottom: return renderer.borderTop() + renderer.paddingTop();
+    case WritingMode::BottomToTop: return renderer.borderBottom() + renderer.paddingBottom();
+    case WritingMode::LeftToRight: return renderer.borderLeft() + renderer.paddingLeft();
+    case WritingMode::RightToLeft: return renderer.borderRight() + renderer.paddingRight();
     }
 
     ASSERT_NOT_REACHED();

Modified: trunk/Source/WebCore/rendering/style/RenderStyle.cpp (266690 => 266691)


--- trunk/Source/WebCore/rendering/style/RenderStyle.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/rendering/style/RenderStyle.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -165,7 +165,7 @@
     m_inheritedFlags.pointerEvents = static_cast<unsigned>(initialPointerEvents());
     m_inheritedFlags.insideLink = static_cast<unsigned>(InsideLink::NotInside);
     m_inheritedFlags.insideDefaultButton = false;
-    m_inheritedFlags.writingMode = initialWritingMode();
+    m_inheritedFlags.writingMode = static_cast<unsigned>(initialWritingMode());
 #if ENABLE(TEXT_AUTOSIZING)
     m_inheritedFlags.autosizeStatus = 0;
 #endif
@@ -2103,13 +2103,13 @@
 const BorderValue& RenderStyle::borderBefore() const
 {
     switch (writingMode()) {
-    case TopToBottomWritingMode:
+    case WritingMode::TopToBottom:
         return borderTop();
-    case BottomToTopWritingMode:
+    case WritingMode::BottomToTop:
         return borderBottom();
-    case LeftToRightWritingMode:
+    case WritingMode::LeftToRight:
         return borderLeft();
-    case RightToLeftWritingMode:
+    case WritingMode::RightToLeft:
         return borderRight();
     }
     ASSERT_NOT_REACHED();
@@ -2119,13 +2119,13 @@
 const BorderValue& RenderStyle::borderAfter() const
 {
     switch (writingMode()) {
-    case TopToBottomWritingMode:
+    case WritingMode::TopToBottom:
         return borderBottom();
-    case BottomToTopWritingMode:
+    case WritingMode::BottomToTop:
         return borderTop();
-    case LeftToRightWritingMode:
+    case WritingMode::LeftToRight:
         return borderRight();
-    case RightToLeftWritingMode:
+    case WritingMode::RightToLeft:
         return borderLeft();
     }
     ASSERT_NOT_REACHED();
@@ -2149,13 +2149,13 @@
 float RenderStyle::borderBeforeWidth() const
 {
     switch (writingMode()) {
-    case TopToBottomWritingMode:
+    case WritingMode::TopToBottom:
         return borderTopWidth();
-    case BottomToTopWritingMode:
+    case WritingMode::BottomToTop:
         return borderBottomWidth();
-    case LeftToRightWritingMode:
+    case WritingMode::LeftToRight:
         return borderLeftWidth();
-    case RightToLeftWritingMode:
+    case WritingMode::RightToLeft:
         return borderRightWidth();
     }
     ASSERT_NOT_REACHED();
@@ -2165,13 +2165,13 @@
 float RenderStyle::borderAfterWidth() const
 {
     switch (writingMode()) {
-    case TopToBottomWritingMode:
+    case WritingMode::TopToBottom:
         return borderBottomWidth();
-    case BottomToTopWritingMode:
+    case WritingMode::BottomToTop:
         return borderTopWidth();
-    case LeftToRightWritingMode:
+    case WritingMode::LeftToRight:
         return borderRightWidth();
-    case RightToLeftWritingMode:
+    case WritingMode::RightToLeft:
         return borderLeftWidth();
     }
     ASSERT_NOT_REACHED();

Modified: trunk/Source/WebCore/rendering/style/RenderStyle.h (266690 => 266691)


--- trunk/Source/WebCore/rendering/style/RenderStyle.h	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/rendering/style/RenderStyle.h	2020-09-07 02:22:02 UTC (rev 266691)
@@ -1489,7 +1489,7 @@
     static ColumnAxis initialColumnAxis() { return ColumnAxis::Auto; }
     static ColumnProgression initialColumnProgression() { return ColumnProgression::Normal; }
     static TextDirection initialDirection() { return TextDirection::LTR; }
-    static WritingMode initialWritingMode() { return TopToBottomWritingMode; }
+    static WritingMode initialWritingMode() { return WritingMode::TopToBottom; }
     static TextCombine initialTextCombine() { return TextCombine::None; }
     static TextOrientation initialTextOrientation() { return TextOrientation::Mixed; }
     static ObjectFit initialObjectFit() { return ObjectFit::Fill; }
@@ -2244,7 +2244,7 @@
 {
     if (v == writingMode())
         return false;
-    m_inheritedFlags.writingMode = v;
+    m_inheritedFlags.writingMode = static_cast<unsigned>(v);
     return true;
 }
 

Modified: trunk/Source/WebCore/style/StyleAdjuster.cpp (266690 => 266691)


--- trunk/Source/WebCore/style/StyleAdjuster.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/style/StyleAdjuster.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -328,10 +328,10 @@
             style.setWritingMode(m_parentStyle.writingMode());
 
         // FIXME: Since we don't support block-flow on flexible boxes yet, disallow setting
-        // of block-flow to anything other than TopToBottomWritingMode.
+        // of block-flow to anything other than WritingMode::TopToBottom.
         // https://bugs.webkit.org/show_bug.cgi?id=46418 - Flexible box support.
-        if (style.writingMode() != TopToBottomWritingMode && (style.display() == DisplayType::Box || style.display() == DisplayType::InlineBox))
-            style.setWritingMode(TopToBottomWritingMode);
+        if (style.writingMode() != WritingMode::TopToBottom && (style.display() == DisplayType::Box || style.display() == DisplayType::InlineBox))
+            style.setWritingMode(WritingMode::TopToBottom);
 
         // https://www.w3.org/TR/css-display/#transformations
         // "A parent with a grid or flex display value blockifies the box’s display type."

Modified: trunk/Source/WebCore/style/StyleBuilderState.cpp (266690 => 266691)


--- trunk/Source/WebCore/style/StyleBuilderState.cpp	2020-09-07 01:33:30 UTC (rev 266690)
+++ trunk/Source/WebCore/style/StyleBuilderState.cpp	2020-09-07 02:22:02 UTC (rev 266691)
@@ -339,7 +339,7 @@
 
     m_style.setTextAlign(TextAlignMode::Center);
     if (m_style.isHorizontalWritingMode())
-        m_style.setWritingMode(LeftToRightWritingMode);
+        m_style.setWritingMode(WritingMode::LeftToRight);
 }
 
 void BuilderState::updateFont()
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to