summaryrefslogtreecommitdiffstats
path: root/WebKit/android/nav/CachedNode.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebKit/android/nav/CachedNode.cpp')
-rw-r--r--WebKit/android/nav/CachedNode.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/WebKit/android/nav/CachedNode.cpp b/WebKit/android/nav/CachedNode.cpp
index e5040ea..0c9d541 100644
--- a/WebKit/android/nav/CachedNode.cpp
+++ b/WebKit/android/nav/CachedNode.cpp
@@ -249,6 +249,31 @@ bool CachedNode::isTextField(const CachedFrame* frame) const
return input ? input->isTextField() : false;
}
+void CachedNode::localCursorRings(const CachedFrame* frame,
+ WTF::Vector<WebCore::IntRect>* rings) const
+{
+ rings->clear();
+ for (unsigned index = 0; index < mCursorRing.size(); index++)
+ rings->append(localRing(frame, index));
+}
+
+WebCore::IntRect CachedNode::localBounds(const CachedFrame* frame) const
+{
+ return mIsInLayer ? frame->localBounds(this, mBounds) : mBounds;
+}
+
+WebCore::IntRect CachedNode::localHitBounds(const CachedFrame* frame) const
+{
+ return mIsInLayer ? frame->localBounds(this, mHitBounds) : mHitBounds;
+}
+
+WebCore::IntRect CachedNode::localRing(const CachedFrame* frame,
+ size_t part) const
+{
+ const WebCore::IntRect& rect = mCursorRing.at(part);
+ return mIsInLayer ? frame->localBounds(this, rect) : rect;
+}
+
void CachedNode::move(int x, int y)
{
mBounds.move(x, y);