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 184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
195 if (!m_eventPath) | 195 if (!m_eventPath) |
196 m_eventPath = adoptPtr(new EventPath(this)); | 196 m_eventPath = adoptPtr(new EventPath(this)); |
197 return *m_eventPath; | 197 return *m_eventPath; |
198 } | 198 } |
199 | 199 |
200 PassRefPtr<NodeList> Event::path() const | 200 PassRefPtr<NodeList> Event::path() const |
201 { | 201 { |
202 if (!m_currentTarget || !m_currentTarget->toNode()) | 202 if (!m_currentTarget || !m_currentTarget->toNode()) |
203 return StaticNodeList::createEmpty(); | 203 return StaticNodeList::createEmpty(); |
204 Node* node = m_currentTarget->toNode(); | 204 Node* node = m_currentTarget->toNode(); |
| 205 // FIXME: Support SVG Elements. |
| 206 if (node->isSVGElement()) |
| 207 return StaticNodeList::createEmpty(); |
205 size_t eventPathSize = m_eventPath->size(); | 208 size_t eventPathSize = m_eventPath->size(); |
206 for (size_t i = 0; i < eventPathSize; ++i) { | 209 for (size_t i = 0; i < eventPathSize; ++i) { |
207 if (node == (*m_eventPath)[i].node()) { | 210 if (node == (*m_eventPath)[i].node()) { |
208 ASSERT((*m_eventPath)[i].eventPath()); | 211 return (*m_eventPath)[i].treeScopeEventContext()->ensureEventPath(*m
_eventPath); |
209 return (*m_eventPath)[i].eventPath(); | |
210 } | 212 } |
211 } | 213 } |
212 return StaticNodeList::createEmpty(); | 214 return StaticNodeList::createEmpty(); |
213 } | 215 } |
214 | 216 |
215 void Event::trace(Visitor*) | 217 void Event::trace(Visitor*) |
216 { | 218 { |
217 } | 219 } |
218 | 220 |
219 } // namespace WebCore | 221 } // namespace WebCore |
OLD | NEW |