diff options
Diffstat (limited to 'WebCore/dom/Node.h')
-rw-r--r-- | WebCore/dom/Node.h | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/WebCore/dom/Node.h b/WebCore/dom/Node.h index ebf275a..495bca9 100644 --- a/WebCore/dom/Node.h +++ b/WebCore/dom/Node.h @@ -27,14 +27,9 @@ #include "EventTarget.h" #include "KURLHash.h" -#include "PlatformString.h" -#include "RegisteredEventListener.h" +#include "ScriptWrappable.h" #include "TreeShared.h" -#include "FloatPoint.h" -#include <wtf/Assertions.h> #include <wtf/ListHashSet.h> -#include <wtf/OwnPtr.h> -#include <wtf/PassRefPtr.h> namespace WebCore { @@ -46,6 +41,7 @@ class DynamicNodeList; class Element; class Event; class EventListener; +class FloatPoint; class Frame; class IntRect; class KeyboardEvent; @@ -81,7 +77,7 @@ const unsigned short DOCUMENT_POSITION_CONTAINED_BY = 0x10; const unsigned short DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 0x20; // this class implements nodes, which can have a parent but no children: -class Node : public EventTarget, public TreeShared<Node> { +class Node : public EventTarget, public TreeShared<Node>, public ScriptWrappable { friend class Document; public: enum NodeType { @@ -206,6 +202,9 @@ public: // The node's parent for the purpose of event capture and bubbling. virtual ContainerNode* eventParentNode(); + // Returns the enclosing event parent node (or self) that, when clicked, would trigger a navigation. + Node* enclosingLinkEventParentOrSelf(); + // Node ancestors when concerned about event flow void eventAncestors(Vector<RefPtr<ContainerNode> > &ancestors); @@ -252,7 +251,7 @@ public: virtual ContainerNode* addChild(PassRefPtr<Node>); // Called by the parser when this element's close tag is reached, - // signalling that all child tags have been parsed and added. + // signaling that all child tags have been parsed and added. // This is needed for <applet> and <object> elements, which can't lay themselves out // until they know all of their nested <param>s. [Radar 3603191, 4040848]. // Also used for script elements and some SVG elements for similar purposes, @@ -584,7 +583,10 @@ protected: void setTabIndexExplicitly(short); bool hasRareData() const { return m_hasRareData; } - +#if ENABLE(SVG) + bool hasRareSVGData() const { return m_hasRareSVGData; } +#endif + NodeRareData* rareData() const; NodeRareData* ensureRareData(); @@ -648,9 +650,10 @@ protected: #if ENABLE(SVG) mutable bool m_areSVGAttributesValid : 1; // Element mutable bool m_synchronizingSVGAttributes : 1; // SVGElement + bool m_hasRareSVGData : 1; // SVGElement #endif - // 11 bits remaining + // 10 bits remaining }; // Used in Node::addSubresourceAttributeURLs() and in addSubresourceStyleURLs() |