diff options
Diffstat (limited to 'chromium/third_party/WebKit/Source/core/rendering/style/GridTrackSize.h')
-rw-r--r-- | chromium/third_party/WebKit/Source/core/rendering/style/GridTrackSize.h | 46 |
1 files changed, 12 insertions, 34 deletions
diff --git a/chromium/third_party/WebKit/Source/core/rendering/style/GridTrackSize.h b/chromium/third_party/WebKit/Source/core/rendering/style/GridTrackSize.h index 584b47a4024..b64e5e3bc21 100644 --- a/chromium/third_party/WebKit/Source/core/rendering/style/GridTrackSize.h +++ b/chromium/third_party/WebKit/Source/core/rendering/style/GridTrackSize.h @@ -42,30 +42,27 @@ enum GridTrackSizeType { class GridTrackSize { public: - GridTrackSize() + GridTrackSize(const GridLength& length) : m_type(LengthTrackSizing) - , m_minTrackBreadth(Undefined) - , m_maxTrackBreadth(Undefined) + , m_minTrackBreadth(length) + , m_maxTrackBreadth(length) , m_minTrackBreadthIsMinOrMaxContent(false) , m_minTrackBreadthIsMaxContent(false) , m_maxTrackBreadthIsMinOrMaxContent(false) , m_maxTrackBreadthIsMaxContent(false) { - // Someone has to set a valid lenght type through setLength or - // setMinMax before using the object. + cacheMinMaxTrackBreadthTypes(); } - GridTrackSize(LengthType type) - : m_type(LengthTrackSizing) - , m_minTrackBreadth(type) - , m_maxTrackBreadth(type) + GridTrackSize(const GridLength& minTrackBreadth, const GridLength& maxTrackBreadth) + : m_type(MinMaxTrackSizing) + , m_minTrackBreadth(minTrackBreadth) + , m_maxTrackBreadth(maxTrackBreadth) , m_minTrackBreadthIsMinOrMaxContent(false) , m_minTrackBreadthIsMaxContent(false) , m_maxTrackBreadthIsMinOrMaxContent(false) , m_maxTrackBreadthIsMaxContent(false) { - ASSERT(type != Undefined); - cacheMinMaxTrackBreadthTypes(); } @@ -74,24 +71,13 @@ public: ASSERT(m_type == LengthTrackSizing); ASSERT(m_minTrackBreadth == m_maxTrackBreadth); const GridLength& minTrackBreadth = m_minTrackBreadth; - ASSERT(!minTrackBreadth.isLength() || !minTrackBreadth.length().isUndefined()); return minTrackBreadth; } - void setLength(const GridLength& length) - { - m_type = LengthTrackSizing; - m_minTrackBreadth = length; - m_maxTrackBreadth = length; - - cacheMinMaxTrackBreadthTypes(); - } - const GridLength& minTrackBreadth() const { - ASSERT(!m_minTrackBreadth.isLength() || !m_minTrackBreadth.length().isUndefined()); if (m_minTrackBreadth.isLength() && m_minTrackBreadth.length().isAuto()) { - DEFINE_STATIC_LOCAL(GridLength, minContent, (MinContent)); + DEFINE_STATIC_LOCAL(GridLength, minContent, (Length(MinContent))); return minContent; } return m_minTrackBreadth; @@ -99,27 +85,19 @@ public: const GridLength& maxTrackBreadth() const { - ASSERT(!m_maxTrackBreadth.isLength() || !m_maxTrackBreadth.length().isUndefined()); if (m_maxTrackBreadth.isLength() && m_maxTrackBreadth.length().isAuto()) { - DEFINE_STATIC_LOCAL(GridLength, maxContent, (MaxContent)); + DEFINE_STATIC_LOCAL(GridLength, maxContent, (Length(MaxContent))); return maxContent; } return m_maxTrackBreadth; } - void setMinMax(const GridLength& minTrackBreadth, const GridLength& maxTrackBreadth) - { - m_type = MinMaxTrackSizing; - m_minTrackBreadth = minTrackBreadth; - m_maxTrackBreadth = maxTrackBreadth; - - cacheMinMaxTrackBreadthTypes(); - } - GridTrackSizeType type() const { return m_type; } bool isContentSized() const { return m_minTrackBreadth.isContentSized() || m_maxTrackBreadth.isContentSized(); } + bool isPercentage() const { return m_type == LengthTrackSizing && length().isLength() && length().length().isPercent(); } + bool operator==(const GridTrackSize& other) const { return m_type == other.m_type && m_minTrackBreadth == other.m_minTrackBreadth && m_maxTrackBreadth == other.m_maxTrackBreadth; |