Index: Source/core/layout/HitTestResult.h |
diff --git a/Source/core/layout/HitTestResult.h b/Source/core/layout/HitTestResult.h |
index 01127a7ecd36ce969ce251bf51e202cc8a8e05e0..e32d6aa2c8cf60f9e90e2779664090d2b9ba2044 100644 |
--- a/Source/core/layout/HitTestResult.h |
+++ b/Source/core/layout/HitTestResult.h |
@@ -63,6 +63,14 @@ public: |
HitTestResult& operator=(const HitTestResult&); |
DECLARE_TRACE(); |
+ bool equalForCacheability(const HitTestResult&) const; |
+ void cacheValues(const HitTestResult&); |
+ |
+ // Populate this object based on another HitTestResult; similar to assignment operator |
+ // but don't assign any of the request parameters. ie. Thie method avoids setting |
+ // |m_hitTestLocation|, |m_hitTestRequest|. |
+ void populateFromCachedResult(const HitTestResult&); |
+ |
// For point-based hit tests, these accessors provide information about the node |
// under the point. For rect-based hit tests they are meaningless (reflect the |
// last candidate node observed in the rect). |
@@ -124,6 +132,9 @@ public: |
bool isOverLink() const; |
+ const LayoutRect& validityRect() const { return m_validityRect; } |
+ void setValidityRect(const LayoutRect&); |
+ |
// Return true if the test is a list-based test and we should continue testing. |
bool addNodeToListBasedTestResult(Node*, const HitTestLocation& pointInContainer, const LayoutRect& = LayoutRect()); |
bool addNodeToListBasedTestResult(Node*, const HitTestLocation& pointInContainer, const FloatRect&); |
@@ -143,6 +154,7 @@ private: |
HitTestLocation m_hitTestLocation; |
HitTestRequest m_hitTestRequest; |
+ LayoutRect m_validityRect; |
RefPtrWillBeMember<Node> m_innerNode; |
RefPtrWillBeMember<Node> m_innerPossiblyPseudoNode; |