OLD | NEW |
---|---|
(Empty) | |
1 var AUTOSCROLL_INTERVAL = 50; | |
2 var MIDDLE_BUTTON = 1; | |
3 var PAN_SCROLL_RADIUS = 15; // from WebCore/platform/ScrollView.h | |
jamesr
2013/05/31 18:32:08
js style generally follows blink style andwe don't
| |
4 | |
5 window.jsTestIsAsync = true; | |
6 | |
7 function $(id) | |
8 { | |
9 return document.getElementById(id); | |
10 } | |
11 | |
12 function testPanScroll(param) | |
13 { | |
14 function finishTest() | |
15 { | |
16 if ($('container')) | |
17 $('container').innerHTML = ''; | |
18 if (param.finishTest) | |
19 param.finishTest(); | |
20 if (window.finishJSTest) { | |
21 finishJSTest(); | |
22 return; | |
23 } | |
24 if (window.testRunner) | |
25 testRunner.notifyDone(); | |
26 } | |
27 | |
28 var scrollable = param.scrollable; | |
29 var scrolledObject = param.scrolledObject || scrollable; | |
30 | |
31 if (!scrollable.innerHTML) { | |
32 for (var i = 0; i < 100; ++i) { | |
33 var line = document.createElement('div'); | |
34 line.innerHTML = "line " + i; | |
35 scrollable.appendChild(line); | |
36 } | |
37 } | |
38 | |
39 var noModeScroll = false; | |
40 var scrolled = false; | |
41 | |
42 scrolledObject.onscroll = function() { | |
43 if (noModeScroll) { | |
44 testFailed('still autoscroll'); | |
45 finishTest(); | |
46 return; | |
47 } | |
48 | |
49 if (scrolled) | |
50 return; | |
51 scrolled = true; | |
52 testPassed('autoscroll started'); | |
53 | |
54 if (window.eventSender) { | |
55 if (param.clickOrDrag == 'click') | |
56 eventSender.mouseDown(MIDDLE_BUTTON); | |
57 eventSender.mouseUp(MIDDLE_BUTTON); | |
58 } | |
59 }; | |
60 | |
61 scrollable.ownerDocument.onmouseup = function(e) { | |
62 if (!scrolled || e.button != MIDDLE_BUTTON) | |
63 return; | |
64 noMoreScroll = true; | |
65 window.setTimeout(function() { | |
66 testPassed('autoscroll stopped'); | |
67 finishTest(); | |
68 }, AUTOSCROLL_INTERVAL * 2); | |
69 }; | |
70 | |
71 if (!window.eventSender) | |
72 return; | |
73 var startX = param.startX || scrollable.offsetLeft + 5; | |
74 var startY = param.startY || scrollable.offsetTop + 5; | |
75 var endX = param.endX || scrollable.offsetLeft + 5; | |
76 var endY = param.endY || scrollable.offsetTop + PAN_SCROLL_RADIUS + 6; | |
77 eventSender.mouseMoveTo(startX, startY); | |
78 eventSender.mouseDown(MIDDLE_BUTTON); | |
79 if (param.clickOrDrag == 'click') | |
80 eventSender.mouseUp(MIDDLE_BUTTON); | |
81 eventSender.mouseMoveTo(endX, endY); | |
82 } | |
OLD | NEW |