diff options
author | Lorry Tar Creator <lorry-tar-importer@lorry> | 2016-04-10 09:28:39 +0000 |
---|---|---|
committer | Lorry Tar Creator <lorry-tar-importer@lorry> | 2016-04-10 09:28:39 +0000 |
commit | 32761a6cee1d0dee366b885b7b9c777e67885688 (patch) | |
tree | d6bec92bebfb216f4126356e55518842c2f476a1 /Source/WebCore/html/HTMLMeterElement.cpp | |
parent | a4e969f4965059196ca948db781e52f7cfebf19e (diff) | |
download | WebKitGtk-tarball-32761a6cee1d0dee366b885b7b9c777e67885688.tar.gz |
webkitgtk-2.4.11webkitgtk-2.4.11
Diffstat (limited to 'Source/WebCore/html/HTMLMeterElement.cpp')
-rw-r--r-- | Source/WebCore/html/HTMLMeterElement.cpp | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/Source/WebCore/html/HTMLMeterElement.cpp b/Source/WebCore/html/HTMLMeterElement.cpp index 36d27a72b..f7a470a14 100644 --- a/Source/WebCore/html/HTMLMeterElement.cpp +++ b/Source/WebCore/html/HTMLMeterElement.cpp @@ -50,19 +50,19 @@ HTMLMeterElement::~HTMLMeterElement() { } -Ref<HTMLMeterElement> HTMLMeterElement::create(const QualifiedName& tagName, Document& document) +PassRefPtr<HTMLMeterElement> HTMLMeterElement::create(const QualifiedName& tagName, Document& document) { - Ref<HTMLMeterElement> meter = adoptRef(*new HTMLMeterElement(tagName, document)); + RefPtr<HTMLMeterElement> meter = adoptRef(new HTMLMeterElement(tagName, document)); meter->ensureUserAgentShadowRoot(); return meter; } -RenderPtr<RenderElement> HTMLMeterElement::createElementRenderer(Ref<RenderStyle>&& style, const RenderTreePosition&) +RenderPtr<RenderElement> HTMLMeterElement::createElementRenderer(PassRef<RenderStyle> style) { - if (!document().page()->theme().supportsMeter(style.get().appearance())) - return RenderElement::createFor(*this, WTFMove(style)); + if (hasAuthorShadowRoot() || !document().page()->theme().supportsMeter(style.get().appearance())) + return RenderElement::createFor(*this, std::move(style)); - return createRenderer<RenderMeter>(*this, WTFMove(style)); + return createRenderer<RenderMeter>(*this, std::move(style)); } bool HTMLMeterElement::childShouldCreateRenderer(const Node& child) const @@ -220,25 +220,25 @@ void HTMLMeterElement::didElementStateChange() RenderMeter* HTMLMeterElement::renderMeter() const { - if (is<RenderMeter>(renderer())) - return downcast<RenderMeter>(renderer()); - return downcast<RenderMeter>(descendantsOfType<Element>(*userAgentShadowRoot()).first()->renderer()); + if (renderer() && renderer()->isMeter()) + return toRenderMeter(renderer()); + return toRenderMeter(descendantsOfType<Element>(*userAgentShadowRoot()).first()->renderer()); } void HTMLMeterElement::didAddUserAgentShadowRoot(ShadowRoot* root) { ASSERT(!m_value); - Ref<MeterInnerElement> inner = MeterInnerElement::create(document()); - root->appendChild(inner.copyRef()); + RefPtr<MeterInnerElement> inner = MeterInnerElement::create(document()); + root->appendChild(inner); - Ref<MeterBarElement> bar = MeterBarElement::create(document()); + RefPtr<MeterBarElement> bar = MeterBarElement::create(document()); m_value = MeterValueElement::create(document()); m_value->setWidthPercentage(0); m_value->updatePseudo(); - bar->appendChild(*m_value, ASSERT_NO_EXCEPTION); + bar->appendChild(m_value, ASSERT_NO_EXCEPTION); - inner->appendChild(WTFMove(bar), ASSERT_NO_EXCEPTION); + inner->appendChild(bar, ASSERT_NO_EXCEPTION); } } // namespace |