Changeset 65633 in webkit
- Timestamp:
- Aug 18, 2010 3:05:52 PM (14 years ago)
- Location:
- trunk/WebKit/chromium
- Files:
-
- 2 added
- 10 edited
- 8 copied
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebKit/chromium/ChangeLog
r65608 r65633 1 2010-08-18 Jay Civelli <jcivelli@chromium.org> 2 3 Reviewed by Darin Fisher. 4 5 Renaming the WebEvent to WebDOMEvent and adding a new event class 6 for mouse events so that the event listener API can be used to listen 7 to them. The renaming is needed as there already is a WebMouseEvent class. 8 https://bugs.webkit.org/show_bug.cgi?id=43453 9 10 * WebKit.gyp: 11 * public/WebDOMEvent.h: Added. 12 * public/WebDOMEventListener.h: Added. 13 * public/WebDOMMouseEvent.h: Added. 14 * public/WebDOMMutationEvent.h: Added. 15 * public/WebNode.h: 16 * src/EventListenerWrapper.cpp: 17 * src/EventListenerWrapper.h: 18 * src/WebDOMEvent.cpp: Added. 19 * src/WebDOMEventListener.cpp: Added. 20 * src/WebDOMEventListenerPrivate.cpp: Added. 21 * src/WebDOMEventListenerPrivate.h: Added. 22 * src/WebDOMMouseEvent.cpp: Added. 23 * src/WebDOMMutationEvent.cpp: Added. 24 * src/WebNode.cpp: 25 (WebKit::WebNode::isElementNode): 26 (WebKit::WebNode::addDOMEventListener): 27 (WebKit::WebNode::removeDOMEventListener): 28 1 29 2010-08-17 Ilya Tikhonovsky <loislo@chromium.org> 2 30 -
trunk/WebKit/chromium/WebKit.gyp
r65608 r65633 135 135 'public/WebCString.h', 136 136 'public/WebCursorInfo.h', 137 'public/WebDOMEvent.h', 138 'public/WebDOMEventListener.h', 139 'public/WebDOMMouseEvent.h', 140 'public/WebDOMMutationEvent.h', 137 141 'public/WebDOMStringList.h', 138 142 'public/WebData.h', … … 382 386 'src/WebCString.cpp', 383 387 'src/WebCursorInfo.cpp', 388 'src/WebDOMEvent.cpp', 389 'src/WebDOMEventListener.cpp', 390 'src/WebDOMEventListenerPrivate.cpp', 391 'src/WebDOMEventListenerPrivate.h', 392 'src/WebDOMMouseEvent.cpp', 393 'src/WebDOMMutationEvent.cpp', 384 394 'src/WebDOMStringList.cpp', 385 395 'src/WebData.cpp', -
trunk/WebKit/chromium/public/WebDOMEventListener.h
r65632 r65633 29 29 */ 30 30 31 #ifndef Web EventListener_h32 #define Web EventListener_h31 #ifndef WebDOMEventListener_h 32 #define WebDOMEventListener_h 33 33 34 34 #include "WebCommon.h" … … 41 41 42 42 class EventListenerWrapper; 43 class Web Event;44 class Web EventListenerPrivate;43 class WebDOMEvent; 44 class WebDOMEventListenerPrivate; 45 45 class WebNode; 46 46 class WebString; 47 47 48 class Web EventListener {48 class WebDOMEventListener { 49 49 public: 50 WEBKIT_API Web EventListener();51 WEBKIT_API virtual ~Web EventListener();50 WEBKIT_API WebDOMEventListener(); 51 WEBKIT_API virtual ~WebDOMEventListener(); 52 52 53 53 // Called when an event is received. 54 virtual void handleEvent(const Web Event&) = 0;54 virtual void handleEvent(const WebDOMEvent&) = 0; 55 55 56 56 #if WEBKIT_IMPLEMENTATION … … 61 61 62 62 private: 63 Web EventListenerPrivate* m_private;63 WebDOMEventListenerPrivate* m_private; 64 64 }; 65 65 -
trunk/WebKit/chromium/public/WebDOMMouseEvent.h
r65632 r65633 28 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 29 */ 30 #ifndef WebDOMMouseEvent_h 31 #define WebDOMMouseEvent_h 30 32 31 #ifndef EventListenerWrapper_h 32 #define EventListenerWrapper_h 33 #include "WebDOMEvent.h" 33 34 34 #include "EventListener.h" 35 36 namespace WebCore { 37 class ScriptExecutionContext; 38 } 39 40 using namespace WebCore; 35 #if WEBKIT_IMPLEMENTATION 36 namespace WebCore { class Event; } 37 #endif 41 38 42 39 namespace WebKit { 43 40 44 class WebEventListener; 41 class WebDOMMouseEvent : public WebDOMEvent { 42 public: 43 WEBKIT_API int screenX() const; 44 WEBKIT_API int screenY() const; 45 WEBKIT_API int clientX() const; 46 WEBKIT_API int clientY() const; 47 WEBKIT_API int layerX() const; 48 WEBKIT_API int layerY() const; 49 WEBKIT_API int offsetX() const; 50 WEBKIT_API int offsetY() const; 51 WEBKIT_API int pageX() const; 52 WEBKIT_API int pageY() const; 53 WEBKIT_API int x() const; 54 WEBKIT_API int y() const; 45 55 46 class EventListenerWrapper : public EventListener { 47 public: 48 EventListenerWrapper(WebEventListener*); 49 ~EventListenerWrapper(); 50 51 virtual bool operator==(const EventListener&); 52 virtual void handleEvent(ScriptExecutionContext*, Event*); 53 54 void webEventListenerDeleted(); 55 56 private: 57 WebEventListener* m_webEventListener; 56 WEBKIT_API int button() const; 57 WEBKIT_API bool buttonDown() const; 58 58 }; 59 59 -
trunk/WebKit/chromium/public/WebDOMMutationEvent.h
r65632 r65633 28 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 29 */ 30 #ifndef WebDOMMutationEvent_h 31 #define WebDOMMutationEvent_h 30 32 31 #ifndef EventListenerWrapper_h 32 #define EventListenerWrapper_h 33 #include "WebDOMEvent.h" 33 34 34 #include "EventListener.h" 35 36 namespace WebCore { 37 class ScriptExecutionContext; 38 } 39 40 using namespace WebCore; 35 #if WEBKIT_IMPLEMENTATION 36 namespace WebCore { class Event; } 37 #endif 41 38 42 39 namespace WebKit { 43 40 44 class WebEventListener; 41 class WebDOMMutationEvent : public WebDOMEvent { 42 public: 43 enum AttrChangeType { 44 Modification = 1, 45 Addition = 2, 46 Removal = 3 47 }; 45 48 46 class EventListenerWrapper : public EventListener { 47 public: 48 EventListenerWrapper(WebEventListener*); 49 ~EventListenerWrapper(); 50 51 virtual bool operator==(const EventListener&); 52 virtual void handleEvent(ScriptExecutionContext*, Event*); 53 54 void webEventListenerDeleted(); 55 56 private: 57 WebEventListener* m_webEventListener; 49 WEBKIT_API WebNode relatedNode() const; 50 WEBKIT_API WebString prevValue() const; 51 WEBKIT_API WebString newValue() const; 52 WEBKIT_API WebString attrName() const; 53 WEBKIT_API AttrChangeType attrChange() const; 58 54 }; 59 55 -
trunk/WebKit/chromium/public/WebEventListener.h
r62133 r65633 40 40 namespace WebKit { 41 41 42 class EventListenerWrapper;42 class DeprecatedEventListenerWrapper; 43 43 class WebEvent; 44 44 class WebEventListenerPrivate; … … 55 55 56 56 #if WEBKIT_IMPLEMENTATION 57 void notifyEventListenerDeleted( EventListenerWrapper*);58 EventListenerWrapper* createEventListenerWrapper(const WebString& eventType, bool useCapture, WebCore::Node* node);59 EventListenerWrapper* getEventListenerWrapper(const WebString& eventType, bool useCapture, WebCore::Node* node);57 void notifyEventListenerDeleted(DeprecatedEventListenerWrapper*); 58 DeprecatedEventListenerWrapper* createEventListenerWrapper(const WebString& eventType, bool useCapture, WebCore::Node* node); 59 DeprecatedEventListenerWrapper* getEventListenerWrapper(const WebString& eventType, bool useCapture, WebCore::Node* node); 60 60 #endif 61 61 -
trunk/WebKit/chromium/public/WebNode.h
r63160 r65633 39 39 40 40 namespace WebKit { 41 class WebDOMEventListener; 42 class WebDOMEventListenerPrivate; 41 43 class WebDocument; 42 44 class WebEventListener; … … 98 100 WEBKIT_API bool isTextNode() const; 99 101 WEBKIT_API bool isElementNode() const; 102 WEBKIT_API void addEventListener(const WebString& eventType, WebDOMEventListener* listener, bool useCapture); 103 WEBKIT_API void removeEventListener(const WebString& eventType, WebDOMEventListener* listener, bool useCapture); 100 104 WEBKIT_API void addEventListener(const WebString& eventType, WebEventListener* listener, bool useCapture); 101 105 WEBKIT_API void removeEventListener(const WebString& eventType, WebEventListener* listener, bool useCapture); -
trunk/WebKit/chromium/src/EventListenerWrapper.cpp
r53934 r65633 35 35 #include "EventListener.h" 36 36 37 #include "WebDOMEvent.h" 38 #include "WebDOMEventListener.h" 37 39 #include "WebEvent.h" 38 40 #include "WebEventListener.h" … … 40 42 namespace WebKit { 41 43 42 EventListenerWrapper::EventListenerWrapper(Web EventListener* webEventListener)44 EventListenerWrapper::EventListenerWrapper(WebDOMEventListener* webDOMEventListener) 43 45 : EventListener(EventListener::JSEventListenerType) 44 , m_web EventListener(webEventListener)46 , m_webDOMEventListener(webDOMEventListener) 45 47 { 46 48 } … … 48 50 EventListenerWrapper::~EventListenerWrapper() 49 51 { 50 if (m_web EventListener)51 m_web EventListener->notifyEventListenerDeleted(this);52 if (m_webDOMEventListener) 53 m_webDOMEventListener->notifyEventListenerDeleted(this); 52 54 } 53 55 … … 59 61 void EventListenerWrapper::handleEvent(ScriptExecutionContext* context, Event* event) 60 62 { 63 if (!m_webDOMEventListener) 64 return; 65 WebDOMEvent webDOMEvent(event); 66 m_webDOMEventListener->handleEvent(webDOMEvent); 67 } 68 69 void EventListenerWrapper::webDOMEventListenerDeleted() 70 { 71 m_webDOMEventListener = 0; 72 } 73 74 DeprecatedEventListenerWrapper::DeprecatedEventListenerWrapper(WebEventListener* webEventListener) 75 : EventListener(EventListener::JSEventListenerType) 76 , m_webEventListener(webEventListener) 77 { 78 } 79 80 DeprecatedEventListenerWrapper::~DeprecatedEventListenerWrapper() 81 { 82 if (m_webEventListener) 83 m_webEventListener->notifyEventListenerDeleted(this); 84 } 85 86 bool DeprecatedEventListenerWrapper::operator==(const EventListener& listener) 87 { 88 return this == &listener; 89 } 90 91 void DeprecatedEventListenerWrapper::handleEvent(ScriptExecutionContext* context, Event* event) 92 { 61 93 if (!m_webEventListener) 62 94 return; … … 65 97 } 66 98 67 void EventListenerWrapper::webEventListenerDeleted()99 void DeprecatedEventListenerWrapper::webEventListenerDeleted() 68 100 { 69 101 m_webEventListener = 0; -
trunk/WebKit/chromium/src/EventListenerWrapper.h
r53934 r65633 42 42 namespace WebKit { 43 43 44 class WebDOMEventListener; 44 45 class WebEventListener; 45 46 47 // FIXME: Remove the DeprecatedEventListenerWrapper class below once Chromium 48 // switched to using WebDOMEvent. 46 49 class EventListenerWrapper : public EventListener { 47 50 public: 48 EventListenerWrapper(Web EventListener*);51 EventListenerWrapper(WebDOMEventListener*); 49 52 ~EventListenerWrapper(); 53 54 virtual bool operator==(const EventListener&); 55 virtual void handleEvent(ScriptExecutionContext*, Event*); 56 57 void webDOMEventListenerDeleted(); 58 59 private: 60 WebDOMEventListener* m_webDOMEventListener; 61 }; 62 63 class DeprecatedEventListenerWrapper : public EventListener { 64 public: 65 DeprecatedEventListenerWrapper(WebEventListener*); 66 ~DeprecatedEventListenerWrapper(); 50 67 51 68 virtual bool operator==(const EventListener&); … … 58 75 }; 59 76 77 60 78 } // namespace WebKit 61 79 -
trunk/WebKit/chromium/src/WebDOMEventListener.cpp
r65632 r65633 30 30 31 31 #include "config.h" 32 #include "Web EventListener.h"32 #include "WebDOMEventListener.h" 33 33 34 #include "Web EventListenerPrivate.h"34 #include "WebDOMEventListenerPrivate.h" 35 35 36 36 namespace WebKit { 37 37 38 Web EventListener::WebEventListener()39 : m_private(new Web EventListenerPrivate(this))38 WebDOMEventListener::WebDOMEventListener() 39 : m_private(new WebDOMEventListenerPrivate(this)) 40 40 { 41 41 } 42 42 43 Web EventListener::~WebEventListener()43 WebDOMEventListener::~WebDOMEventListener() 44 44 { 45 m_private->web EventListenerDeleted();45 m_private->webDOMEventListenerDeleted(); 46 46 delete m_private; 47 47 } 48 48 49 void Web EventListener::notifyEventListenerDeleted(EventListenerWrapper* wrapper)49 void WebDOMEventListener::notifyEventListenerDeleted(EventListenerWrapper* wrapper) 50 50 { 51 51 m_private->eventListenerDeleted(wrapper); 52 52 } 53 53 54 EventListenerWrapper* Web EventListener::createEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node)54 EventListenerWrapper* WebDOMEventListener::createEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node) 55 55 { 56 56 return m_private->createEventListenerWrapper(eventType, useCapture, node); 57 57 } 58 58 59 EventListenerWrapper* Web EventListener::getEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node)59 EventListenerWrapper* WebDOMEventListener::getEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node) 60 60 { 61 61 return m_private->getEventListenerWrapper(eventType, useCapture, node); -
trunk/WebKit/chromium/src/WebDOMEventListenerPrivate.cpp
r65632 r65633 30 30 31 31 #include "config.h" 32 #include "Web EventListenerPrivate.h"32 #include "WebDOMEventListenerPrivate.h" 33 33 34 34 #include "EventListenerWrapper.h" 35 #include "Web EventListener.h"35 #include "WebDOMEventListener.h" 36 36 37 37 namespace WebKit { 38 38 39 Web EventListenerPrivate::WebEventListenerPrivate(WebEventListener* webEventListener)40 : m_web EventListener(webEventListener)39 WebDOMEventListenerPrivate::WebDOMEventListenerPrivate(WebDOMEventListener* webDOMEventListener) 40 : m_webDOMEventListener(webDOMEventListener) 41 41 { 42 42 } 43 43 44 Web EventListenerPrivate::~WebEventListenerPrivate()44 WebDOMEventListenerPrivate::~WebDOMEventListenerPrivate() 45 45 { 46 46 } 47 47 48 EventListenerWrapper* Web EventListenerPrivate::createEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node)48 EventListenerWrapper* WebDOMEventListenerPrivate::createEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node) 49 49 { 50 EventListenerWrapper* listenerWrapper = new EventListenerWrapper(m_web EventListener);51 Web EventListenerPrivate::ListenerInfo listenerInfo(eventType, useCapture, listenerWrapper, node);50 EventListenerWrapper* listenerWrapper = new EventListenerWrapper(m_webDOMEventListener); 51 WebDOMEventListenerPrivate::ListenerInfo listenerInfo(eventType, useCapture, listenerWrapper, node); 52 52 m_listenerWrappers.append(listenerInfo); 53 53 return listenerWrapper; 54 54 } 55 55 56 EventListenerWrapper* Web EventListenerPrivate::getEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node)56 EventListenerWrapper* WebDOMEventListenerPrivate::getEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node) 57 57 { 58 Vector<Web EventListenerPrivate::ListenerInfo>::const_iterator iter;58 Vector<WebDOMEventListenerPrivate::ListenerInfo>::const_iterator iter; 59 59 for (iter = m_listenerWrappers.begin(); iter != m_listenerWrappers.end(); ++iter) { 60 60 if (iter->node == node) … … 65 65 } 66 66 67 void Web EventListenerPrivate::webEventListenerDeleted()67 void WebDOMEventListenerPrivate::webDOMEventListenerDeleted() 68 68 { 69 // Notifies all Web EventListenerWrappers that we are going away so they can69 // Notifies all WebDOMEventListenerWrappers that we are going away so they can 70 70 // invalidate their pointer to us. 71 Vector<Web EventListenerPrivate::ListenerInfo>::const_iterator iter;71 Vector<WebDOMEventListenerPrivate::ListenerInfo>::const_iterator iter; 72 72 for (iter = m_listenerWrappers.begin(); iter != m_listenerWrappers.end(); ++iter) 73 iter->eventListenerWrapper->web EventListenerDeleted();73 iter->eventListenerWrapper->webDOMEventListenerDeleted(); 74 74 } 75 75 76 void Web EventListenerPrivate::eventListenerDeleted(EventListenerWrapper* eventListener)76 void WebDOMEventListenerPrivate::eventListenerDeleted(EventListenerWrapper* eventListener) 77 77 { 78 78 for (size_t i = 0; i < m_listenerWrappers.size(); ++i) { -
trunk/WebKit/chromium/src/WebDOMEventListenerPrivate.h
r65632 r65633 29 29 */ 30 30 31 #ifndef Web EventListenerPrivate_h32 #define Web EventListenerPrivate_h31 #ifndef WebDOMEventListenerPrivate_h 32 #define WebDOMEventListenerPrivate_h 33 33 34 34 #include "WebString.h" … … 45 45 46 46 class EventListenerWrapper; 47 class Web EventListener;47 class WebDOMEventListener; 48 48 49 class Web EventListenerPrivate {49 class WebDOMEventListenerPrivate { 50 50 public: 51 Web EventListenerPrivate(WebEventListener* webEventListener);52 ~Web EventListenerPrivate();51 WebDOMEventListenerPrivate(WebDOMEventListener* webDOMEventListener); 52 ~WebDOMEventListenerPrivate(); 53 53 54 54 EventListenerWrapper* createEventListenerWrapper( … … 56 56 57 57 // Gets the ListenerEventWrapper for a specific node. 58 // Used by WebNode::remove EventListener().58 // Used by WebNode::removeDOMEventListener(). 59 59 EventListenerWrapper* getEventListenerWrapper( 60 60 const WebString& eventType, bool useCapture, Node* node); 61 61 62 // Called by the Web EventListener when it is about to be deleted.63 void web EventListenerDeleted();62 // Called by the WebDOMEventListener when it is about to be deleted. 63 void webDOMEventListenerDeleted(); 64 64 65 65 // Called by the EventListenerWrapper when it is about to be deleted. … … 84 84 85 85 private: 86 Web EventListener* m_webEventListener;86 WebDOMEventListener* m_webDOMEventListener; 87 87 88 88 // We keep a list of the wrapper for the WebKit EventListener, it is needed -
trunk/WebKit/chromium/src/WebDOMMouseEvent.cpp
r65632 r65633 30 30 31 31 #include "config.h" 32 #include " EventListenerWrapper.h"32 #include "WebDOMMouseEvent.h" 33 33 34 #include "Event.h" 35 #include "EventListener.h" 34 #include "MouseEvent.h" 36 35 37 #include "WebEvent.h" 38 #include "WebEventListener.h" 36 using namespace WebCore; 39 37 40 38 namespace WebKit { 41 39 42 EventListenerWrapper::EventListenerWrapper(WebEventListener* webEventListener) 43 : EventListener(EventListener::JSEventListenerType) 44 , m_webEventListener(webEventListener) 40 int WebDOMMouseEvent::screenX() const 45 41 { 42 return constUnwrap<MouseEvent>()->screenX(); 46 43 } 47 44 48 EventListenerWrapper::~EventListenerWrapper() 45 int WebDOMMouseEvent::screenY() const 49 46 { 50 if (m_webEventListener) 51 m_webEventListener->notifyEventListenerDeleted(this); 47 return constUnwrap<MouseEvent>()->screenY(); 52 48 } 53 49 54 bool EventListenerWrapper::operator==(const EventListener& listener) 50 int WebDOMMouseEvent::clientX() const 55 51 { 56 return this == &listener;52 return constUnwrap<MouseEvent>()->clientX(); 57 53 } 58 54 59 void EventListenerWrapper::handleEvent(ScriptExecutionContext* context, Event* event) 55 int WebDOMMouseEvent::clientY() const 60 56 { 61 if (!m_webEventListener) 62 return; 63 WebEvent webEvent(event); 64 m_webEventListener->handleEvent(webEvent); 57 return constUnwrap<MouseEvent>()->clientY(); 65 58 } 66 59 67 void EventListenerWrapper::webEventListenerDeleted() 60 int WebDOMMouseEvent::layerX() const 68 61 { 69 m_webEventListener = 0; 62 return constUnwrap<MouseEvent>()->layerX(); 63 } 64 65 int WebDOMMouseEvent::layerY() const 66 { 67 return constUnwrap<MouseEvent>()->layerY(); 68 } 69 70 int WebDOMMouseEvent::offsetX() const 71 { 72 return constUnwrap<MouseEvent>()->offsetX(); 73 } 74 75 int WebDOMMouseEvent::offsetY() const 76 { 77 return constUnwrap<MouseEvent>()->offsetY(); 78 } 79 80 int WebDOMMouseEvent::pageX() const 81 { 82 return constUnwrap<MouseEvent>()->pageX(); 83 } 84 85 int WebDOMMouseEvent::pageY() const 86 { 87 return constUnwrap<MouseEvent>()->pageY(); 88 } 89 90 int WebDOMMouseEvent::x() const 91 { 92 return constUnwrap<MouseEvent>()->x(); 93 } 94 95 int WebDOMMouseEvent::y() const 96 { 97 return constUnwrap<MouseEvent>()->y(); 98 } 99 100 int WebDOMMouseEvent::button() const 101 { 102 return constUnwrap<MouseEvent>()->button(); 103 } 104 105 bool WebDOMMouseEvent::buttonDown() const 106 { 107 return constUnwrap<MouseEvent>()->buttonDown(); 70 108 } 71 109 -
trunk/WebKit/chromium/src/WebDOMMutationEvent.cpp
r65632 r65633 29 29 */ 30 30 31 #i fndef EventListenerWrapper_h32 # define EventListenerWrapper_h31 #include "config.h" 32 #include "WebDOMMutationEvent.h" 33 33 34 #include "EventListener.h" 35 36 namespace WebCore { 37 class ScriptExecutionContext; 38 } 34 #include "MutationEvent.h" 39 35 40 36 using namespace WebCore; … … 42 38 namespace WebKit { 43 39 44 class WebEventListener; 40 WebNode WebDOMMutationEvent::relatedNode() const 41 { 42 return WebNode(constUnwrap<MutationEvent>()->relatedNode()); 43 } 45 44 46 class EventListenerWrapper : public EventListener { 47 public: 48 EventListenerWrapper(WebEventListener*);49 ~EventListenerWrapper(); 45 WebString WebDOMMutationEvent::prevValue() const 46 { 47 return WebString(constUnwrap<MutationEvent>()->prevValue()); 48 } 50 49 51 virtual bool operator==(const EventListener&); 52 virtual void handleEvent(ScriptExecutionContext*, Event*); 50 WebString WebDOMMutationEvent::newValue() const 51 { 52 return WebString(constUnwrap<MutationEvent>()->newValue()); 53 } 53 54 54 void webEventListenerDeleted(); 55 WebString WebDOMMutationEvent::attrName() const 56 { 57 return WebString(constUnwrap<MutationEvent>()->attrName()); 58 } 55 59 56 private: 57 WebEventListener* m_webEventListener; 58 }; 60 WebDOMMutationEvent::AttrChangeType WebDOMMutationEvent::attrChange() const 61 { 62 return static_cast<AttrChangeType>(constUnwrap<MutationEvent>()->attrChange()); 63 } 59 64 60 65 } // namespace WebKit 61 62 #endif -
trunk/WebKit/chromium/src/WebEventListener.cpp
r53934 r65633 47 47 } 48 48 49 void WebEventListener::notifyEventListenerDeleted( EventListenerWrapper* wrapper)49 void WebEventListener::notifyEventListenerDeleted(DeprecatedEventListenerWrapper* wrapper) 50 50 { 51 51 m_private->eventListenerDeleted(wrapper); 52 52 } 53 53 54 EventListenerWrapper* WebEventListener::createEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node)54 DeprecatedEventListenerWrapper* WebEventListener::createEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node) 55 55 { 56 56 return m_private->createEventListenerWrapper(eventType, useCapture, node); 57 57 } 58 58 59 EventListenerWrapper* WebEventListener::getEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node)59 DeprecatedEventListenerWrapper* WebEventListener::getEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node) 60 60 { 61 61 return m_private->getEventListenerWrapper(eventType, useCapture, node); -
trunk/WebKit/chromium/src/WebEventListenerPrivate.cpp
r53934 r65633 46 46 } 47 47 48 EventListenerWrapper* WebEventListenerPrivate::createEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node)48 DeprecatedEventListenerWrapper* WebEventListenerPrivate::createEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node) 49 49 { 50 EventListenerWrapper* listenerWrapper = newEventListenerWrapper(m_webEventListener);50 DeprecatedEventListenerWrapper* listenerWrapper = new DeprecatedEventListenerWrapper(m_webEventListener); 51 51 WebEventListenerPrivate::ListenerInfo listenerInfo(eventType, useCapture, listenerWrapper, node); 52 52 m_listenerWrappers.append(listenerInfo); … … 54 54 } 55 55 56 EventListenerWrapper* WebEventListenerPrivate::getEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node)56 DeprecatedEventListenerWrapper* WebEventListenerPrivate::getEventListenerWrapper(const WebString& eventType, bool useCapture, Node* node) 57 57 { 58 58 Vector<WebEventListenerPrivate::ListenerInfo>::const_iterator iter; … … 74 74 } 75 75 76 void WebEventListenerPrivate::eventListenerDeleted( EventListenerWrapper* eventListener)76 void WebEventListenerPrivate::eventListenerDeleted(DeprecatedEventListenerWrapper* eventListener) 77 77 { 78 78 for (size_t i = 0; i < m_listenerWrappers.size(); ++i) { -
trunk/WebKit/chromium/src/WebEventListenerPrivate.h
r53934 r65633 44 44 namespace WebKit { 45 45 46 class EventListenerWrapper;46 class DeprecatedEventListenerWrapper; 47 47 class WebEventListener; 48 48 … … 52 52 ~WebEventListenerPrivate(); 53 53 54 EventListenerWrapper* createEventListenerWrapper(54 DeprecatedEventListenerWrapper* createEventListenerWrapper( 55 55 const WebString& eventType, bool useCapture, Node* node); 56 56 57 // Gets the ListenerEventWrapper for a specific node.57 // Gets the DeprecatedEventListenerWrapper for a specific node. 58 58 // Used by WebNode::removeEventListener(). 59 EventListenerWrapper* getEventListenerWrapper(59 DeprecatedEventListenerWrapper* getEventListenerWrapper( 60 60 const WebString& eventType, bool useCapture, Node* node); 61 61 … … 63 63 void webEventListenerDeleted(); 64 64 65 // Called by the EventListenerWrapper when it is about to be deleted.66 void eventListenerDeleted( EventListenerWrapper* eventListener);65 // Called by the DeprecatedEventListenerWrapper when it is about to be deleted. 66 void eventListenerDeleted(DeprecatedEventListenerWrapper* eventListener); 67 67 68 68 struct ListenerInfo { 69 69 ListenerInfo(const WebString& eventType, bool useCapture, 70 EventListenerWrapper* eventListenerWrapper,70 DeprecatedEventListenerWrapper* eventListenerWrapper, 71 71 Node* node) 72 72 : eventType(eventType) … … 79 79 WebString eventType; 80 80 bool useCapture; 81 EventListenerWrapper* eventListenerWrapper;81 DeprecatedEventListenerWrapper* eventListenerWrapper; 82 82 Node* node; 83 83 }; -
trunk/WebKit/chromium/src/WebNode.cpp
r63160 r65633 39 39 40 40 #include "EventListenerWrapper.h" 41 #include "WebDOMEvent.h" 42 #include "WebDOMEventListener.h" 41 43 #include "WebDocument.h" 42 44 #include "WebEvent.h" … … 150 152 } 151 153 152 void WebNode::addEventListener(const WebString& eventType, Web EventListener* listener, bool useCapture)154 void WebNode::addEventListener(const WebString& eventType, WebDOMEventListener* listener, bool useCapture) 153 155 { 154 156 EventListenerWrapper* listenerWrapper = … … 160 162 } 161 163 162 void WebNode::removeEventListener(const WebString& eventType, Web EventListener* listener, bool useCapture)164 void WebNode::removeEventListener(const WebString& eventType, WebDOMEventListener* listener, bool useCapture) 163 165 { 164 166 EventListenerWrapper* listenerWrapper = … … 168 170 } 169 171 172 void WebNode::addEventListener(const WebString& eventType, WebEventListener* listener, bool useCapture) 173 { 174 DeprecatedEventListenerWrapper* listenerWrapper = 175 listener->createEventListenerWrapper(eventType, useCapture, m_private.get()); 176 // The listenerWrapper is only referenced by the actual Node. Once it goes 177 // away, the wrapper notifies the WebEventListener so it can clear its 178 // pointer to it. 179 m_private->addEventListener(eventType, adoptRef(listenerWrapper), useCapture); 180 } 181 182 void WebNode::removeEventListener(const WebString& eventType, WebEventListener* listener, bool useCapture) 183 { 184 DeprecatedEventListenerWrapper* listenerWrapper = 185 listener->getEventListenerWrapper(eventType, useCapture, m_private.get()); 186 m_private->removeEventListener(eventType, listenerWrapper, useCapture); 187 // listenerWrapper is now deleted. 188 } 189 170 190 void WebNode::simulateClick() 171 191 {
Note: See TracChangeset
for help on using the changeset viewer.