summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/svg/SVGElementInstance.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/svg/SVGElementInstance.cpp')
-rw-r--r--Source/WebCore/svg/SVGElementInstance.cpp18
1 files changed, 7 insertions, 11 deletions
diff --git a/Source/WebCore/svg/SVGElementInstance.cpp b/Source/WebCore/svg/SVGElementInstance.cpp
index a873f0b..6b9c085 100644
--- a/Source/WebCore/svg/SVGElementInstance.cpp
+++ b/Source/WebCore/svg/SVGElementInstance.cpp
@@ -1,6 +1,7 @@
/*
* Copyright (C) 2007, 2008 Nikolas Zimmermann <zimmermann@kde.org>
* Copyright (C) Research In Motion Limited 2010. All rights reserved.
+ * Copyright (C) 2011 Torch Mobile (Beijing) Co. Ltd. All rights reserved.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
@@ -40,15 +41,16 @@ namespace WebCore {
static WTF::RefCountedLeakCounter instanceCounter("WebCoreSVGElementInstance");
#endif
-SVGElementInstance::SVGElementInstance(SVGUseElement* useElement, PassRefPtr<SVGElement> originalElement)
- : m_useElement(useElement)
+SVGElementInstance::SVGElementInstance(SVGUseElement* correspondingUseElement, SVGUseElement* directUseElement, PassRefPtr<SVGElement> originalElement)
+ : m_correspondingUseElement(correspondingUseElement)
+ , m_directUseElement(directUseElement)
, m_element(originalElement)
, m_previousSibling(0)
, m_nextSibling(0)
, m_firstChild(0)
, m_lastChild(0)
{
- ASSERT(m_useElement);
+ ASSERT(m_correspondingUseElement);
ASSERT(m_element);
// Register as instance for passed element.
@@ -131,19 +133,13 @@ void SVGElementInstance::removeAllEventListeners()
m_element->removeAllEventListeners();
}
-bool SVGElementInstance::dispatchEvent(PassRefPtr<Event> prpEvent)
+bool SVGElementInstance::dispatchEvent(PassRefPtr<Event> event)
{
- RefPtr<EventTarget> protect = this;
- RefPtr<Event> event = prpEvent;
-
- event->setTarget(this);
-
SVGElement* element = shadowTreeElement();
if (!element)
return false;
- RefPtr<FrameView> view = element->document()->view();
- return element->dispatchGenericEvent(event.release());
+ return element->dispatchEvent(event);
}
EventTargetData* SVGElementInstance::eventTargetData()