summaryrefslogtreecommitdiffstats
path: root/Source/WebKit/android/nav/SelectText.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit/android/nav/SelectText.cpp')
-rw-r--r--Source/WebKit/android/nav/SelectText.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/Source/WebKit/android/nav/SelectText.cpp b/Source/WebKit/android/nav/SelectText.cpp
index 4a6b509..d20c44a 100644
--- a/Source/WebKit/android/nav/SelectText.cpp
+++ b/Source/WebKit/android/nav/SelectText.cpp
@@ -1829,12 +1829,23 @@ bool SelectText::hitSelection(int x, int y) const
return m_selRegion.contains(x, y);
}
-void SelectText::getSelectionHandles(int* handles)
+void SelectText::getSelectionHandles(int* handles, LayerAndroid* root)
{
handles[0] = m_selStart.fLeft;
handles[1] = m_selStart.fBottom;
handles[2] = m_selEnd.fRight;
handles[3] = m_selEnd.fBottom;
+ if (root && m_layerId) {
+ Layer* layer = root->findById(m_layerId);
+ while (layer) {
+ const SkPoint& pos = layer->getPosition();
+ handles[0] += pos.fX;
+ handles[2] += pos.fX;
+ handles[1] += pos.fY;
+ handles[3] += pos.fY;
+ layer = layer->getParent();
+ }
+ }
}
void SelectText::moveSelection(const IntRect& vis, int x, int y)