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 198 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
209 m_underlyingEvent = ue; | 209 m_underlyingEvent = ue; |
210 } | 210 } |
211 | 211 |
212 EventPath& Event::ensureEventPath() | 212 EventPath& Event::ensureEventPath() |
213 { | 213 { |
214 if (!m_eventPath) | 214 if (!m_eventPath) |
215 m_eventPath = adoptPtrWillBeNoop(new EventPath(this)); | 215 m_eventPath = adoptPtrWillBeNoop(new EventPath(this)); |
216 return *m_eventPath; | 216 return *m_eventPath; |
217 } | 217 } |
218 | 218 |
219 PassRefPtr<NodeList> Event::path() const | 219 PassRefPtrWillBeRawPtr<NodeList> Event::path() const |
220 { | 220 { |
221 if (!m_currentTarget || !m_currentTarget->toNode()) | 221 if (!m_currentTarget || !m_currentTarget->toNode()) |
222 return StaticNodeList::createEmpty(); | 222 return StaticNodeList::createEmpty(); |
223 Node* node = m_currentTarget->toNode(); | 223 Node* node = m_currentTarget->toNode(); |
224 // FIXME: Support SVG Elements. | 224 // FIXME: Support SVG Elements. |
225 if (node->isSVGElement()) | 225 if (node->isSVGElement()) |
226 return StaticNodeList::createEmpty(); | 226 return StaticNodeList::createEmpty(); |
227 size_t eventPathSize = m_eventPath->size(); | 227 size_t eventPathSize = m_eventPath->size(); |
228 for (size_t i = 0; i < eventPathSize; ++i) { | 228 for (size_t i = 0; i < eventPathSize; ++i) { |
229 if (node == (*m_eventPath)[i].node()) { | 229 if (node == (*m_eventPath)[i].node()) { |
230 return (*m_eventPath)[i].treeScopeEventContext()->ensureEventPath(*m
_eventPath); | 230 return (*m_eventPath)[i].treeScopeEventContext()->ensureEventPath(*m
_eventPath); |
231 } | 231 } |
232 } | 232 } |
233 return StaticNodeList::createEmpty(); | 233 return StaticNodeList::createEmpty(); |
234 } | 234 } |
235 | 235 |
236 void Event::trace(Visitor* visitor) | 236 void Event::trace(Visitor* visitor) |
237 { | 237 { |
238 visitor->trace(m_underlyingEvent); | 238 visitor->trace(m_underlyingEvent); |
239 visitor->trace(m_eventPath); | 239 visitor->trace(m_eventPath); |
240 } | 240 } |
241 | 241 |
242 } // namespace WebCore | 242 } // namespace WebCore |
OLD | NEW |