OLD | NEW |
---|---|
(Empty) | |
1 <!DOCTYPE html> | |
2 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3 .org/1999/xlink" width="400" height="400" style="border: 1px solid black;"> | |
3 <g> | |
4 <text x="130" y="30" font-family="Arial" font-size="10" fill="black">Happy, Web</text> | |
5 <text x="130" y="50" font-family="Arial" font-size="10" fill="black">Happy, SVG</text> | |
6 <text x="130" y="70" font-family="Arial" font-size="10" fill="black">Happy, ;)link</text> | |
7 </g> | |
8 <text id="line" x="130" y="150" font-family="Arial" font-size="10" fill="black ">Hello World. Hello, SVG.</text> | |
9 </svg> | |
10 <script src="../../resources/js-test.js"></script> | |
11 <script src="resources/SelectionTestCase.js"></script> | |
12 <script type="text/javascript"> | |
13 var range; | |
14 function runTest() { | |
15 selectText('line', 0, 10); | |
16 verify("0", "11"); | |
17 | |
18 selectText('line', 6, 10); | |
19 verify("6", "11"); | |
20 | |
21 selectText('line', 12, 23); | |
22 verify("12", "24"); | |
23 | |
24 selectText('line', 0, 23); | |
25 verify("0", "24"); | |
26 } | |
27 function verify(start, end) { | |
fs
2016/01/25 13:00:56
Rather than copying these helpers to all test, put
| |
28 range = window.getSelection().getRangeAt(0); | |
29 shouldBe("range.startOffset", start); | |
30 shouldBe("range.endOffset", end); | |
31 if (window.eventSender) { | |
32 eventSender.mouseMoveTo(0,0); | |
33 eventSender.mouseDown(); | |
34 eventSender.mouseUp(); | |
35 } | |
36 } | |
37 | |
38 function selectText(id, start, end) { | |
39 var element = document.getElementById(id); | |
40 var startPos = element.getStartPositionOfChar(start); | |
41 startPos.y += (element.getBBox().height * 1.5); | |
42 var endPos = element.getEndPositionOfChar(end); | |
43 endPos.y += (element.getBBox().height * 1.5); | |
44 var absStartPos = toAbsoluteCoordinates(startPos, element); | |
45 var absEndPos = toAbsoluteCoordinates(endPos, element); | |
46 if (window.eventSender) { | |
47 eventSender.mouseMoveTo(absStartPos.x, absStartPos.y); | |
48 eventSender.mouseDown(); | |
49 eventSender.mouseMoveTo(absEndPos.x, absStartPos.y); | |
50 eventSender.mouseUp(); | |
51 } | |
52 } | |
53 runTest(); | |
54 </script> | |
OLD | NEW |