diff options
Diffstat (limited to 'Source/WebCore/rendering/mathml/RenderMathMLRow.h')
-rw-r--r-- | Source/WebCore/rendering/mathml/RenderMathMLRow.h | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/Source/WebCore/rendering/mathml/RenderMathMLRow.h b/Source/WebCore/rendering/mathml/RenderMathMLRow.h index 16ddfcdea..f9c16789b 100644 --- a/Source/WebCore/rendering/mathml/RenderMathMLRow.h +++ b/Source/WebCore/rendering/mathml/RenderMathMLRow.h @@ -1,5 +1,6 @@ /* * Copyright (C) 2010 Alex Milowski (alex@milowski.com). All rights reserved. + * Copyright (C) 2016 Igalia S.L. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -23,8 +24,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef RenderMathMLRow_h -#define RenderMathMLRow_h +#pragma once #if ENABLE(MATHML) @@ -32,24 +32,28 @@ namespace WebCore { -class RenderMathMLRoot; +class MathMLRowElement; class RenderMathMLRow : public RenderMathMLBlock { public: - RenderMathMLRow(Element&, PassRef<RenderStyle>); - RenderMathMLRow(Document&, PassRef<RenderStyle>); - - static RenderPtr<RenderMathMLRow> createAnonymousWithParentRenderer(RenderMathMLRoot&); + RenderMathMLRow(MathMLRowElement&, RenderStyle&&); + MathMLRowElement& element() const; protected: - virtual void layout(); + void layoutBlock(bool relayoutChildren, LayoutUnit pageLogicalHeight = 0) override; + std::optional<int> firstLineBaseline() const override; + + void layoutRowItems(LayoutUnit& ascent, LayoutUnit& descent); + void computeLineVerticalStretch(LayoutUnit& ascent, LayoutUnit& descent); + void computePreferredLogicalWidths() override; private: - virtual bool isRenderMathMLRow() const override final { return true; } - virtual const char* renderName() const override { return isAnonymous() ? "RenderMathMLRow (anonymous)" : "RenderMathMLRow"; } + bool isRenderMathMLRow() const final { return true; } + const char* renderName() const override { return "RenderMathMLRow"; } }; -} +} // namespace WebCore + +SPECIALIZE_TYPE_TRAITS_RENDER_OBJECT(RenderMathMLRow, isRenderMathMLRow()) #endif // ENABLE(MATHML) -#endif // RenderMathMLRow_h |