Diff
Modified: trunk/Source/WebCore/ChangeLog (238480 => 238481)
--- trunk/Source/WebCore/ChangeLog 2018-11-25 21:30:34 UTC (rev 238480)
+++ trunk/Source/WebCore/ChangeLog 2018-11-25 21:32:55 UTC (rev 238481)
@@ -1,5 +1,30 @@
2018-11-25 Zalan Bujtas <[email protected]>
+ [LFC] Rename Layout::Position to Layout::Point
+ https://bugs.webkit.org/show_bug.cgi?id=191950
+
+ Reviewed by Antti Koivisto.
+
+ It actually represents a point.
+
+ * layout/FormattingContext.cpp:
+ (WebCore::Layout::FormattingContext::mapTopLeftToAncestor):
+ (WebCore::Layout::FormattingContext::mapCoordinateToAncestor):
+ * layout/FormattingContext.h:
+ * layout/LayoutUnits.h:
+ (WebCore::Layout::Point::Point):
+ (WebCore::Layout::Point::moveBy):
+ (WebCore::Layout::Position::operator LayoutPoint const): Deleted.
+ (WebCore::Layout::Position::Position): Deleted.
+ (WebCore::Layout::Position::moveBy): Deleted.
+ * layout/blockformatting/BlockFormattingContext.h:
+ * layout/blockformatting/BlockFormattingContextGeometry.cpp:
+ (WebCore::Layout::BlockFormattingContext::Geometry::staticPosition):
+ * layout/floats/FloatingState.cpp:
+ (WebCore::Layout::FloatingState::constraints const):
+
+2018-11-25 Zalan Bujtas <[email protected]>
+
[LFC] Floating code should use typed positions (PositionInContextRoot).
https://bugs.webkit.org/show_bug.cgi?id=191949
Modified: trunk/Source/WebCore/layout/FormattingContext.cpp (238480 => 238481)
--- trunk/Source/WebCore/layout/FormattingContext.cpp 2018-11-25 21:30:34 UTC (rev 238480)
+++ trunk/Source/WebCore/layout/FormattingContext.cpp 2018-11-25 21:32:55 UTC (rev 238481)
@@ -183,13 +183,13 @@
return mappedDisplayBox;
}
-Position FormattingContext::mapTopLeftToAncestor(const LayoutState& layoutState, const Box& layoutBox, const Container& ancestor)
+Point FormattingContext::mapTopLeftToAncestor(const LayoutState& layoutState, const Box& layoutBox, const Container& ancestor)
{
ASSERT(layoutBox.isDescendantOf(ancestor));
return mapCoordinateToAncestor(layoutState, layoutState.displayBoxForLayoutBox(layoutBox).topLeft(), *layoutBox.containingBlock(), ancestor);
}
-Position FormattingContext::mapCoordinateToAncestor(const LayoutState& layoutState, Position position, const Container& containingBlock, const Container& ancestor)
+Point FormattingContext::mapCoordinateToAncestor(const LayoutState& layoutState, Point position, const Container& containingBlock, const Container& ancestor)
{
auto mappedPosition = position;
auto* container = &containingBlock;
Modified: trunk/Source/WebCore/layout/FormattingContext.h (238480 => 238481)
--- trunk/Source/WebCore/layout/FormattingContext.h 2018-11-25 21:30:34 UTC (rev 238480)
+++ trunk/Source/WebCore/layout/FormattingContext.h 2018-11-25 21:32:55 UTC (rev 238481)
@@ -59,8 +59,8 @@
virtual InstrinsicWidthConstraints instrinsicWidthConstraints() const = 0;
static Display::Box mapBoxToAncestor(const LayoutState&, const Box&, const Container& ancestor);
- static Position mapTopLeftToAncestor(const LayoutState&, const Box&, const Container& ancestor);
- static Position mapCoordinateToAncestor(const LayoutState&, Position, const Container& containingBlock, const Container& ancestor);
+ static Point mapTopLeftToAncestor(const LayoutState&, const Box&, const Container& ancestor);
+ static Point mapCoordinateToAncestor(const LayoutState&, Point, const Container& containingBlock, const Container& ancestor);
protected:
using LayoutQueue = Vector<const Box*>;
Modified: trunk/Source/WebCore/layout/LayoutUnits.h (238480 => 238481)
--- trunk/Source/WebCore/layout/LayoutUnits.h 2018-11-25 21:30:34 UTC (rev 238480)
+++ trunk/Source/WebCore/layout/LayoutUnits.h 2018-11-25 21:32:55 UTC (rev 238481)
@@ -34,37 +34,37 @@
namespace WebCore {
namespace Layout {
-struct Position {
+struct Point {
// FIXME: Use LayoutUnit<Horizontal> to avoid top/left vs. x/y confusion.
LayoutUnit x; // left
LayoutUnit y; // top
- Position() = default;
- Position(LayoutUnit, LayoutUnit);
- Position(LayoutPoint);
+ Point() = default;
+ Point(LayoutUnit, LayoutUnit);
+ Point(LayoutPoint);
void moveBy(LayoutPoint);
operator LayoutPoint() const { return { x, y }; }
};
// FIXME: Wrap these into structs.
-using PointInContextRoot = Position;
-using PointInContainingBlock = Position;
+using PointInContextRoot = Point;
+using PointInContainingBlock = Point;
using PositionInContextRoot = LayoutUnit;
using PositionInContainingBlock = LayoutUnit;
-inline Position::Position(LayoutPoint point)
+inline Point::Point(LayoutPoint point)
: x(point.x())
, y(point.y())
{
}
-inline Position::Position(LayoutUnit x, LayoutUnit y)
+inline Point::Point(LayoutUnit x, LayoutUnit y)
: x(x)
, y(y)
{
}
-inline void Position::moveBy(LayoutPoint offset)
+inline void Point::moveBy(LayoutPoint offset)
{
x += offset.x();
y += offset.y();
Modified: trunk/Source/WebCore/layout/blockformatting/BlockFormattingContext.h (238480 => 238481)
--- trunk/Source/WebCore/layout/blockformatting/BlockFormattingContext.h 2018-11-25 21:30:34 UTC (rev 238480)
+++ trunk/Source/WebCore/layout/blockformatting/BlockFormattingContext.h 2018-11-25 21:32:55 UTC (rev 238481)
@@ -74,7 +74,7 @@
static HeightAndMargin inFlowHeightAndMargin(const LayoutState&, const Box&, std::optional<LayoutUnit> usedHeight = { });
static WidthAndMargin inFlowWidthAndMargin(const LayoutState&, const Box&, std::optional<LayoutUnit> usedWidth = { });
- static Position staticPosition(const LayoutState&, const Box&);
+ static Point staticPosition(const LayoutState&, const Box&);
static bool instrinsicWidthConstraintsNeedChildrenWidth(const Box&);
static InstrinsicWidthConstraints instrinsicWidthConstraints(const LayoutState&, const Box&);
@@ -105,7 +105,7 @@
static HeightAndMargin inFlowNonReplacedHeightAndMargin(const LayoutState&, const Box&, std::optional<LayoutUnit> usedHeight = { });
static WidthAndMargin inFlowNonReplacedWidthAndMargin(const LayoutState&, const Box&, std::optional<LayoutUnit> usedWidth = { });
static WidthAndMargin inFlowReplacedWidthAndMargin(const LayoutState&, const Box&, std::optional<LayoutUnit> usedWidth = { });
- static Position staticPositionForOutOfFlowPositioned(const LayoutState&, const Box&);
+ static Point staticPositionForOutOfFlowPositioned(const LayoutState&, const Box&);
};
};
Modified: trunk/Source/WebCore/layout/blockformatting/BlockFormattingContextGeometry.cpp (238480 => 238481)
--- trunk/Source/WebCore/layout/blockformatting/BlockFormattingContextGeometry.cpp 2018-11-25 21:30:34 UTC (rev 238480)
+++ trunk/Source/WebCore/layout/blockformatting/BlockFormattingContextGeometry.cpp 2018-11-25 21:32:55 UTC (rev 238481)
@@ -266,7 +266,7 @@
return { width, nonReplacedWidthAndMargin.margin, nonReplacedWidthAndMargin.nonComputedMargin };
}
-Position BlockFormattingContext::Geometry::staticPosition(const LayoutState& layoutState, const Box& layoutBox)
+Point BlockFormattingContext::Geometry::staticPosition(const LayoutState& layoutState, const Box& layoutBox)
{
// https://www.w3.org/TR/CSS22/visuren.html#block-formatting
// In a block formatting context, boxes are laid out one after the other, vertically, beginning at the top of a containing block.
Modified: trunk/Source/WebCore/layout/floats/FloatingState.cpp (238480 => 238481)
--- trunk/Source/WebCore/layout/floats/FloatingState.cpp 2018-11-25 21:30:34 UTC (rev 238480)
+++ trunk/Source/WebCore/layout/floats/FloatingState.cpp 2018-11-25 21:32:55 UTC (rev 238481)
@@ -95,7 +95,7 @@
// 2. Find the inner left/right floats at verticalPosition.
// 3. Convert left/right positions back to formattingContextRoot's cooridnate system.
auto coordinateMappingIsRequired = &root() != &formattingContextRoot;
- auto adjustedPosition = Position { 0, verticalPosition };
+ auto adjustedPosition = Point { 0, verticalPosition };
if (coordinateMappingIsRequired)
adjustedPosition = FormattingContext::mapCoordinateToAncestor(m_layoutState, adjustedPosition, downcast<Container>(formattingContextRoot), downcast<Container>(root()));