OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2001 Peter Kelly (pmk@post.com) | 2 * Copyright (C) 2001 Peter Kelly (pmk@post.com) |
3 * Copyright (C) 2001 Tobias Anton (anton@stud.fbi.fh-darmstadt.de) | 3 * Copyright (C) 2001 Tobias Anton (anton@stud.fbi.fh-darmstadt.de) |
4 * Copyright (C) 2006 Samuel Weinig (sam.weinig@gmail.com) | 4 * Copyright (C) 2006 Samuel Weinig (sam.weinig@gmail.com) |
5 * Copyright (C) 2003, 2005, 2006, 2008 Apple Inc. All rights reserved. | 5 * Copyright (C) 2003, 2005, 2006, 2008 Apple Inc. All rights reserved. |
6 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
183 | 183 |
184 Node* MouseEvent::fromElement() const | 184 Node* MouseEvent::fromElement() const |
185 { | 185 { |
186 // MSIE extension - "object from which activation or the mouse pointer is ex
iting during the event" (huh?) | 186 // MSIE extension - "object from which activation or the mouse pointer is ex
iting during the event" (huh?) |
187 if (type() != EventTypeNames::mouseout && type() != EventTypeNames::mouselea
ve) | 187 if (type() != EventTypeNames::mouseout && type() != EventTypeNames::mouselea
ve) |
188 return relatedTarget() ? relatedTarget()->toNode() : 0; | 188 return relatedTarget() ? relatedTarget()->toNode() : 0; |
189 | 189 |
190 return target() ? target()->toNode() : 0; | 190 return target() ? target()->toNode() : 0; |
191 } | 191 } |
192 | 192 |
| 193 void MouseEvent::trace(Visitor* visitor) |
| 194 { |
| 195 visitor->trace(m_clipboard); |
| 196 MouseRelatedEvent::trace(visitor); |
| 197 } |
| 198 |
193 PassRefPtr<SimulatedMouseEvent> SimulatedMouseEvent::create(const AtomicString&
eventType, PassRefPtr<AbstractView> view, PassRefPtr<Event> underlyingEvent) | 199 PassRefPtr<SimulatedMouseEvent> SimulatedMouseEvent::create(const AtomicString&
eventType, PassRefPtr<AbstractView> view, PassRefPtr<Event> underlyingEvent) |
194 { | 200 { |
195 return adoptRef(new SimulatedMouseEvent(eventType, view, underlyingEvent)); | 201 return adoptRef(new SimulatedMouseEvent(eventType, view, underlyingEvent)); |
196 } | 202 } |
197 | 203 |
198 SimulatedMouseEvent::~SimulatedMouseEvent() | 204 SimulatedMouseEvent::~SimulatedMouseEvent() |
199 { | 205 { |
200 } | 206 } |
201 | 207 |
202 SimulatedMouseEvent::SimulatedMouseEvent(const AtomicString& eventType, PassRefP
tr<AbstractView> view, PassRefPtr<Event> underlyingEvent) | 208 SimulatedMouseEvent::SimulatedMouseEvent(const AtomicString& eventType, PassRefP
tr<AbstractView> view, PassRefPtr<Event> underlyingEvent) |
203 : MouseEvent(eventType, true, true, view, 0, 0, 0, 0, 0, | 209 : MouseEvent(eventType, true, true, view, 0, 0, 0, 0, 0, |
204 0, 0, | 210 0, 0, |
205 false, false, false, false, 0, nullptr, nullptr, true) | 211 false, false, false, false, 0, nullptr, nullptr, true) |
206 { | 212 { |
207 if (UIEventWithKeyState* keyStateEvent = findEventWithKeyState(underlyingEve
nt.get())) { | 213 if (UIEventWithKeyState* keyStateEvent = findEventWithKeyState(underlyingEve
nt.get())) { |
208 m_ctrlKey = keyStateEvent->ctrlKey(); | 214 m_ctrlKey = keyStateEvent->ctrlKey(); |
209 m_altKey = keyStateEvent->altKey(); | 215 m_altKey = keyStateEvent->altKey(); |
210 m_shiftKey = keyStateEvent->shiftKey(); | 216 m_shiftKey = keyStateEvent->shiftKey(); |
211 m_metaKey = keyStateEvent->metaKey(); | 217 m_metaKey = keyStateEvent->metaKey(); |
212 } | 218 } |
213 setUnderlyingEvent(underlyingEvent); | 219 setUnderlyingEvent(underlyingEvent); |
214 | 220 |
215 if (this->underlyingEvent() && this->underlyingEvent()->isMouseEvent()) { | 221 if (this->underlyingEvent() && this->underlyingEvent()->isMouseEvent()) { |
216 MouseEvent* mouseEvent = toMouseEvent(this->underlyingEvent()); | 222 MouseEvent* mouseEvent = toMouseEvent(this->underlyingEvent()); |
217 m_screenLocation = mouseEvent->screenLocation(); | 223 m_screenLocation = mouseEvent->screenLocation(); |
218 initCoordinates(mouseEvent->clientLocation()); | 224 initCoordinates(mouseEvent->clientLocation()); |
219 } | 225 } |
220 } | 226 } |
221 | 227 |
| 228 void SimulatedMouseEvent::trace(Visitor* visitor) |
| 229 { |
| 230 MouseEvent::trace(visitor); |
| 231 } |
| 232 |
222 PassRefPtr<MouseEventDispatchMediator> MouseEventDispatchMediator::create(PassRe
fPtr<MouseEvent> mouseEvent, MouseEventType mouseEventType) | 233 PassRefPtr<MouseEventDispatchMediator> MouseEventDispatchMediator::create(PassRe
fPtr<MouseEvent> mouseEvent, MouseEventType mouseEventType) |
223 { | 234 { |
224 return adoptRef(new MouseEventDispatchMediator(mouseEvent, mouseEventType)); | 235 return adoptRef(new MouseEventDispatchMediator(mouseEvent, mouseEventType)); |
225 } | 236 } |
226 | 237 |
227 MouseEventDispatchMediator::MouseEventDispatchMediator(PassRefPtr<MouseEvent> mo
useEvent, MouseEventType mouseEventType) | 238 MouseEventDispatchMediator::MouseEventDispatchMediator(PassRefPtr<MouseEvent> mo
useEvent, MouseEventType mouseEventType) |
228 : EventDispatchMediator(mouseEvent), m_mouseEventType(mouseEventType) | 239 : EventDispatchMediator(mouseEvent), m_mouseEventType(mouseEventType) |
229 { | 240 { |
230 } | 241 } |
231 | 242 |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
268 event()->button(), relatedTarget); | 279 event()->button(), relatedTarget); |
269 if (event()->defaultHandled()) | 280 if (event()->defaultHandled()) |
270 doubleClickEvent->setDefaultHandled(); | 281 doubleClickEvent->setDefaultHandled(); |
271 EventDispatcher::dispatchEvent(dispatcher->node(), MouseEventDispatchMediato
r::create(doubleClickEvent)); | 282 EventDispatcher::dispatchEvent(dispatcher->node(), MouseEventDispatchMediato
r::create(doubleClickEvent)); |
272 if (doubleClickEvent->defaultHandled() || doubleClickEvent->defaultPrevented
()) | 283 if (doubleClickEvent->defaultHandled() || doubleClickEvent->defaultPrevented
()) |
273 return false; | 284 return false; |
274 return !swallowEvent; | 285 return !swallowEvent; |
275 } | 286 } |
276 | 287 |
277 } // namespace WebCore | 288 } // namespace WebCore |
OLD | NEW |