diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2012-09-10 19:10:20 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2012-09-10 19:10:20 +0200 |
commit | 284837daa07b29d6a63a748544a90b1f5842ac5c (patch) | |
tree | ecd258180bde91fe741e0cfd2638beb3c6da7e8e /Source/WebCore/dom/Document.h | |
parent | 2e2ba8ff45915f40ed3e014101269c175f2a89a0 (diff) | |
download | qtwebkit-284837daa07b29d6a63a748544a90b1f5842ac5c.tar.gz |
Imported WebKit commit 68645295d2e3e09af2c942f092556f06aa5f8b0d (http://svn.webkit.org/repository/webkit/trunk@128073)
New snapshot
Diffstat (limited to 'Source/WebCore/dom/Document.h')
-rw-r--r-- | Source/WebCore/dom/Document.h | 26 |
1 files changed, 18 insertions, 8 deletions
diff --git a/Source/WebCore/dom/Document.h b/Source/WebCore/dom/Document.h index a0419aa39..dafe04be3 100644 --- a/Source/WebCore/dom/Document.h +++ b/Source/WebCore/dom/Document.h @@ -34,6 +34,7 @@ #include "DOMTimeStamp.h" #include "DocumentEventQueue.h" #include "DocumentTiming.h" +#include "HitTestRequest.h" #include "IconURL.h" #include "InspectorCounters.h" #include "IntRect.h" @@ -69,6 +70,7 @@ class CharacterData; class Comment; class ContextFeatures; class DOMImplementation; +class DOMNamedFlowCollection; class DOMSelection; class DOMWindow; class Database; @@ -82,6 +84,7 @@ class DocumentWeakReference; class DynamicNodeListCacheBase; class EditingText; class Element; +class ElementAttributeData; class EntityReference; class Event; class EventListener; @@ -110,6 +113,7 @@ class MediaCanStartListener; class MediaQueryList; class MediaQueryMatcher; class MouseEventWithHitTestResults; +class NamedFlowCollection; class NodeFilter; class NodeIterator; class NodeRareData; @@ -138,7 +142,6 @@ class TextResourceDecoder; class TreeWalker; class UndoManager; class WebKitNamedFlow; -class WebKitNamedFlowCollection; class XMLHttpRequest; class XPathEvaluator; class XPathExpression; @@ -205,6 +208,9 @@ enum NodeListInvalidationType { }; const int numNodeListInvalidationTypes = InvalidateOnAnyAttrChange + 1; +struct ImmutableAttributeDataCacheEntry; +typedef HashMap<unsigned, OwnPtr<ImmutableAttributeDataCacheEntry>, AlreadyHashed> ImmutableAttributeDataCache; + class Document : public ContainerNode, public TreeScope, public ScriptExecutionContext { public: static PassRefPtr<Document> create(Frame* frame, const KURL& url) @@ -352,9 +358,10 @@ public: bool cssRegionsEnabled() const; #if ENABLE(CSS_REGIONS) PassRefPtr<WebKitNamedFlow> webkitGetFlowByName(const String&); + PassRefPtr<DOMNamedFlowCollection> webkitGetNamedFlows(); #endif - WebKitNamedFlowCollection* namedFlows(); + NamedFlowCollection* namedFlows(); bool regionBasedColumnsEnabled() const; @@ -370,11 +377,10 @@ public: * @param rightPadding How much to expand the right of the rectangle * @param bottomPadding How much to expand the bottom of the rectangle * @param leftPadding How much to expand the left of the rectangle - * @param ignoreClipping whether or not to ignore the root scroll frame when retrieving the element. - * If false, this method returns null for coordinates outside of the viewport. */ - PassRefPtr<NodeList> nodesFromRect(int centerX, int centerY, unsigned topPadding, unsigned rightPadding, - unsigned bottomPadding, unsigned leftPadding, bool ignoreClipping, bool allowShadowContent) const; + PassRefPtr<NodeList> nodesFromRect(int centerX, int centerY, + unsigned topPadding, unsigned rightPadding, unsigned bottomPadding, unsigned leftPadding, + HitTestRequest::HitTestRequestType hitType = HitTestRequest::ReadOnly | HitTestRequest::Active) const; Element* elementFromPoint(int x, int y) const; PassRefPtr<Range> caretRangeFromPoint(int x, int y); @@ -1181,6 +1187,8 @@ public: virtual void reportMemoryUsage(MemoryObjectInfo*) const OVERRIDE; + PassRefPtr<ElementAttributeData> cachedImmutableAttributeData(const Element*, const Vector<Attribute>&); + protected: Document(Frame*, const KURL&, bool isXHTML, bool isHTML); @@ -1206,7 +1214,7 @@ private: virtual String nodeName() const; virtual NodeType nodeType() const; virtual bool childTypeAllowed(NodeType) const; - virtual PassRefPtr<Node> cloneNode(bool deep, ExceptionCode&); + virtual PassRefPtr<Node> cloneNode(bool deep); virtual bool canReplaceChild(Node* newChild, Node* oldChild); virtual void refScriptExecutionContext() { ref(); } @@ -1560,12 +1568,14 @@ private: bool m_visualUpdatesAllowed; Timer<Document> m_visualUpdatesSuppressionTimer; - RefPtr<WebKitNamedFlowCollection> m_namedFlows; + RefPtr<NamedFlowCollection> m_namedFlows; #if ENABLE(CSP_NEXT) RefPtr<DOMSecurityPolicy> m_domSecurityPolicy; #endif + ImmutableAttributeDataCache m_immutableAttributeDataCache; + #ifndef NDEBUG bool m_didDispatchViewportPropertiesChanged; #endif |