From 1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c Mon Sep 17 00:00:00 2001 From: Lorry Tar Creator Date: Tue, 27 Jun 2017 06:07:23 +0000 Subject: webkitgtk-2.16.5 --- Source/WebCore/rendering/RenderRuby.h | 42 +++++++++++++++++++---------------- 1 file changed, 23 insertions(+), 19 deletions(-) (limited to 'Source/WebCore/rendering/RenderRuby.h') diff --git a/Source/WebCore/rendering/RenderRuby.h b/Source/WebCore/rendering/RenderRuby.h index abac48a1f..e6550faa4 100644 --- a/Source/WebCore/rendering/RenderRuby.h +++ b/Source/WebCore/rendering/RenderRuby.h @@ -28,8 +28,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef RenderRuby_h -#define RenderRuby_h +#pragma once #include "RenderBlockFlow.h" #include "RenderInline.h" @@ -53,42 +52,47 @@ namespace WebCore { // when used as 'display:inline' class RenderRubyAsInline final : public RenderInline { public: - RenderRubyAsInline(Element&, PassRef); + RenderRubyAsInline(Element&, RenderStyle&&); virtual ~RenderRubyAsInline(); - virtual void addChild(RenderObject* child, RenderObject* beforeChild = 0) override; - virtual void removeChild(RenderObject& child) override; + void addChild(RenderObject* child, RenderObject* beforeChild = 0) override; + void removeChild(RenderObject& child) override; protected: - virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle) override; + void styleDidChange(StyleDifference, const RenderStyle* oldStyle) override; private: - virtual bool isRuby() const override { return true; } - virtual const char* renderName() const override { return "RenderRuby (inline)"; } - virtual bool createsAnonymousWrapper() const override { return true; } + bool isRubyInline() const final { return true; } + const char* renderName() const override { return "RenderRuby (inline)"; } + bool createsAnonymousWrapper() const override { return true; } }; // when used as 'display:block' or 'display:inline-block' class RenderRubyAsBlock final : public RenderBlockFlow { public: - RenderRubyAsBlock(Element&, PassRef); + RenderRubyAsBlock(Element&, RenderStyle&&); virtual ~RenderRubyAsBlock(); - Element& element() const { return toElement(nodeForNonAnonymous()); } + Element& element() const { return downcast(nodeForNonAnonymous()); } - virtual void addChild(RenderObject* child, RenderObject* beforeChild = 0) override; - virtual void removeChild(RenderObject& child) override; + void addChild(RenderObject* child, RenderObject* beforeChild = 0) override; + void removeChild(RenderObject& child) override; protected: - virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle) override; + void styleDidChange(StyleDifference, const RenderStyle* oldStyle) override; private: - virtual bool isRuby() const override { return true; } - virtual const char* renderName() const override { return "RenderRuby (block)"; } - virtual bool createsAnonymousWrapper() const override { return true; } - virtual void removeLeftoverAnonymousBlock(RenderBlock*) override { ASSERT_NOT_REACHED(); } + bool isRubyBlock() const final { return true; } + const char* renderName() const override { return "RenderRuby (block)"; } + bool createsAnonymousWrapper() const override { return true; } + void removeLeftoverAnonymousBlock(RenderBlock*) override { ASSERT_NOT_REACHED(); } }; + +inline bool isRuby(const RenderObject& renderer) { return (is(renderer) || is(renderer)); } +inline bool isRuby(const RenderObject* renderer) { return (renderer && isRuby(*renderer)); } + } // namespace WebCore -#endif // RenderRuby_h +SPECIALIZE_TYPE_TRAITS_RENDER_OBJECT(RenderRubyAsInline, isRubyInline()) +SPECIALIZE_TYPE_TRAITS_RENDER_OBJECT(RenderRubyAsBlock, isRubyBlock()) -- cgit v1.2.1