Index: third_party/WebKit/Source/core/layout/ng/NGFragment.h |
diff --git a/third_party/WebKit/Source/core/layout/ng/NGFragment.h b/third_party/WebKit/Source/core/layout/ng/NGFragment.h |
index 3aa3bd8ba4ddd652cc79932fc6aa228fd10a915b..b64c4266de4c5b6eb230f760f88f3ec8208634cf 100644 |
--- a/third_party/WebKit/Source/core/layout/ng/NGFragment.h |
+++ b/third_party/WebKit/Source/core/layout/ng/NGFragment.h |
@@ -7,28 +7,44 @@ |
#include "core/CoreExport.h" |
#include "platform/LayoutUnit.h" |
+#include "platform/heap/Handle.h" |
+#include "wtf/Vector.h" |
namespace blink { |
-class CORE_EXPORT NGFragment final { |
+class CORE_EXPORT NGFragment final : public GarbageCollected<NGFragment> { |
public: |
- NGFragment(LayoutUnit inlineSize, LayoutUnit blockSize); |
- ~NGFragment() { } |
+ NGFragment(LayoutUnit inlineSize, LayoutUnit blockSize, |
+ LayoutUnit inlineOverflow, LayoutUnit blockOverflow); |
+ // Returns the border-box size. |
LayoutUnit inlineSize() const { return m_inlineSize; } |
LayoutUnit blockSize() const { return m_blockSize; } |
+ // Returns the total size, including the contents outside of the border-box. |
+ LayoutUnit inlineOverflow() const { return m_inlineOverflow; } |
+ LayoutUnit blockOverflow() const { return m_blockOverflow; } |
+ |
+ // Returns the offset relative to the parent fragement's content-box. |
LayoutUnit inlineOffset() const { return m_inlineOffset; } |
LayoutUnit blockOffset() const { return m_blockOffset; } |
+ // Should only be used by the parent fragement's layout. |
void setOffset(LayoutUnit inlineOffset, LayoutUnit blockOffset); |
+ DECLARE_TRACE(); |
+ |
private: |
LayoutUnit m_inlineSize; |
LayoutUnit m_blockSize; |
+ LayoutUnit m_inlineOverflow; |
+ LayoutUnit m_blockOverflow; |
+ |
LayoutUnit m_inlineOffset; |
LayoutUnit m_blockOffset; |
+ |
+ HeapVector<Member<const NGFragment>> m_children; |
}; |
} // namespace blink |