Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1303)

Unified Diff: Source/core/rendering/LayoutState.h

Issue 207223003: Make LayoutState members private (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Fixing debug build issues Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | Source/core/rendering/RenderBlock.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/rendering/LayoutState.h
diff --git a/Source/core/rendering/LayoutState.h b/Source/core/rendering/LayoutState.h
index 19453deddb190e53f38518c4b64b7ec19d7b29ac..e2612b072c0f35c47b8cd977aed31fe86e6e3c32 100644
--- a/Source/core/rendering/LayoutState.h
+++ b/Source/core/rendering/LayoutState.h
@@ -42,10 +42,11 @@ class ShapeInsideInfo;
class LayoutState {
WTF_MAKE_NONCOPYABLE(LayoutState);
public:
- LayoutState()
+ // Constructor for root LayoutState created by RenderView
+ LayoutState(LayoutUnit pageLogicalHeight, bool pageLogicalHeightChanged)
: m_clipped(false)
- , m_isPaginated(false)
- , m_pageLogicalHeightChanged(false)
+ , m_isPaginated(pageLogicalHeight)
+ , m_pageLogicalHeightChanged(pageLogicalHeightChanged)
#if !ASSERT_DISABLED
, m_layoutDeltaXSaturated(false)
, m_layoutDeltaYSaturated(false)
@@ -53,14 +54,14 @@ public:
, m_columnInfo(0)
, m_next(0)
, m_shapeInsideInfo(0)
- , m_pageLogicalHeight(0)
+ , m_pageLogicalHeight(pageLogicalHeight)
#ifndef NDEBUG
, m_renderer(0)
#endif
{
}
- LayoutState(LayoutState*, RenderBox&, const LayoutSize& offset, LayoutUnit pageHeight, bool pageHeightChanged, ColumnInfo*);
+ LayoutState(LayoutState*, RenderBox&, const LayoutSize& offset, LayoutUnit pageLogicalHeight, bool pageHeightLogicalChanged, ColumnInfo*);
explicit LayoutState(RenderObject&);
// LayoutState is allocated out of the rendering partition.
@@ -70,6 +71,7 @@ public:
void clearPaginationInformation();
bool isPaginatingColumns() const { return m_columnInfo; }
bool isPaginated() const { return m_isPaginated; }
+ bool isClipped() const { return m_clipped; }
// The page logical offset is the object's offset from the top of the page in the page progression
// direction (so an x-offset in vertical text and a y-offset for horizontal text).
@@ -77,20 +79,42 @@ public:
void addForcedColumnBreak(const RenderBox&, const LayoutUnit& childLogicalOffset);
+ void addLayoutDelta(const LayoutSize& delta)
+ {
+ m_layoutDelta += delta;
+#if !ASSERT_DISABLED
+ m_layoutDeltaXSaturated |= m_layoutDelta.width() == LayoutUnit::max() || m_layoutDelta.width() == LayoutUnit::min();
+ m_layoutDeltaYSaturated |= m_layoutDelta.height() == LayoutUnit::max() || m_layoutDelta.height() == LayoutUnit::min();
+#endif
+ }
+
+ void setColumnInfo(ColumnInfo* columnInfo) { m_columnInfo = columnInfo; }
+
+ const LayoutSize& layoutOffset() const { return m_layoutOffset; }
+ const LayoutSize& layoutDelta() const { return m_layoutDelta; }
+ const LayoutSize& pageOffset() const { return m_pageOffset; }
LayoutUnit pageLogicalHeight() const { return m_pageLogicalHeight; }
bool pageLogicalHeightChanged() const { return m_pageLogicalHeightChanged; }
- LayoutSize layoutOffset() const { return m_layoutOffset; }
+ LayoutState* next() const { return m_next; }
bool needsBlockDirectionLocationSetBeforeLayout() const { return m_isPaginated && m_pageLogicalHeight; }
ShapeInsideInfo* shapeInsideInfo() const { return m_shapeInsideInfo; }
+ ColumnInfo* columnInfo() const { return m_columnInfo; }
+
+ const LayoutRect& clipRect() const { return m_clipRect; }
+ const LayoutSize& paintOffset() const { return m_paintOffset; }
#ifndef NDEBUG
RenderObject* renderer() const { return m_renderer; }
#endif
+#if !ASSERT_DISABLED
+ bool layoutDeltaXSaturated() const { return m_layoutDeltaXSaturated; }
+ bool layoutDeltaYSaturated() const { return m_layoutDeltaYSaturated; }
+#endif
-public:
+private:
// Do not add anything apart from bitfields until after m_columnInfo. See https://bugs.webkit.org/show_bug.cgi?id=100173
bool m_clipped:1;
bool m_isPaginated:1;
« no previous file with comments | « no previous file | Source/core/rendering/RenderBlock.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698