Index: third_party/WebKit/LayoutTests/svg/text/resources/SelectionTestCase.js |
diff --git a/third_party/WebKit/LayoutTests/svg/text/resources/SelectionTestCase.js b/third_party/WebKit/LayoutTests/svg/text/resources/SelectionTestCase.js |
index 5869ecdbdb6fbf664c636587b96855855fe658a7..7d029556b4bdcf0d9f8e215c562b9b464ca58f61 100644 |
--- a/third_party/WebKit/LayoutTests/svg/text/resources/SelectionTestCase.js |
+++ b/third_party/WebKit/LayoutTests/svg/text/resources/SelectionTestCase.js |
@@ -130,3 +130,24 @@ function selectRange(id, start, end, expectedText) { |
document.getElementById("container").appendChild(textElement); |
} |
} |
+ |
+function selectTextFromCharToPoint(selectionInfo, mouse, expectedRange) { |
+ var element = document.getElementById(selectionInfo.id); |
+ var startPos = element.getStartPositionOfChar(selectionInfo.offset); |
+ var absStartPos = toAbsoluteCoordinates(startPos, element); |
+ if (window.eventSender) { |
+ eventSender.mouseMoveTo(absStartPos.x, absStartPos.y); |
+ eventSender.mouseDown(); |
+ eventSender.mouseMoveTo(mouse.x, mouse.y); |
+ eventSender.mouseUp(); |
+ } |
+ |
+ range = window.getSelection().getRangeAt(0); |
+ shouldBe("range.startOffset", expectedRange.start); |
+ shouldBe("range.endOffset", expectedRange.end); |
+ if (window.eventSender) { |
+ eventSender.mouseMoveTo(0,0); |
+ eventSender.mouseDown(); |
+ eventSender.mouseUp(); |
+ } |
+} |