Roll src/third_party/WebKit bf18a82:a9cee16 (svn 185297:185304)
[chromium-blink-merge.git] / chrome / test / chromedriver / js / focus_test.html
blob663b6151d92839c44e32beeecc6bc7dd3912ed8a
1 <!DOCTYPE HTML>
2 <html>
3 <script src='test.js'></script>
4 <script src='focus.js'></script>
5 <script>
7 function testInactiveElement() {
8 var a = document.getElementById('a');
9 a.value = 'abc';
10 a.setSelectionRange(0, 2);
11 assertEquals(0, a.selectionStart);
12 assertEquals(2, a.selectionEnd);
13 var c = document.getElementById('c');
14 c.focus();
15 assertEquals(c, document.activeElement);
16 focus(a);
17 assertEquals(3, a.selectionStart);
18 assertEquals(3, a.selectionEnd);
21 function testActiveElement() {
22 var a = document.getElementById('a');
23 a.focus();
24 var is_blurred = false;
25 var onBlur = function() {
26 is_blurred = true;
28 a.addEventListener('blur', onBlur, false);
29 try {
30 focus(a);
31 assert(!is_blurred);
32 } catch (error) {
33 a.removeEventListener('blur', onBlur, false);
34 throw error;
38 function testNonTextInput() {
39 var a = document.getElementById('a');
40 a.focus();
41 assertEquals(a, document.activeElement);
42 var c = document.getElementById('c');
43 focus(c);
44 assertEquals(c, document.activeElement);
47 function testEditableDiv() {
48 var a = document.getElementById('a');
49 a.focus();
50 assertEquals(a, document.activeElement);
51 var d = document.getElementById('d');
52 focus(d);
53 assertEquals(d, document.activeElement);
56 function testNonFocusableChildOfEditableDiv() {
57 var a = document.getElementById('a');
58 a.focus();
59 assertEquals(a, document.activeElement);
60 try {
61 focus(document.getElementById('e'));
62 assert(false);
63 } catch (error) {
67 function testFocusableChildOfEditableDiv() {
68 var a = document.getElementById('a');
69 a.focus();
70 assertEquals(a, document.activeElement);
71 var f = document.getElementById('f');
72 focus(f);
73 assertEquals(f, document.activeElement);
76 function testTransparentElement() {
77 var a = document.getElementById('a');
78 a.focus();
79 assertEquals(a, document.activeElement);
80 var g = document.getElementById('g');
81 focus(g);
82 assertEquals(g, document.activeElement);
85 </script>
86 <body>
87 <input type="text" id="a">
88 <br>
89 <textarea id="b">
90 </textarea>
91 <br>
92 <input type="button" value="c" id="c">
93 <br>
94 <div id="d" contentEditable="true">
95 </div>
96 <div contentEditable="true">
97 <div id="e">editable</div>
98 </div>
99 <div contentEditable="true">
100 <input id="f" type="text">
101 </div>
102 <div>
103 <input id="g" style='opacity: 0' type='text'>
104 </div>
105 </body>
106 </html>