Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(101)

Side by Side Diff: third_party/WebKit/LayoutTests/fast/events/sequential-focus-navigation-starting-point.html

Issue 1738603002: Sequential focus navigation staring point: Fix a case where clicked Text node has focusable sibling… (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/dom/Document.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <body> 2 <body>
3 <script src="../../resources/testharness.js"></script> 3 <script src="../../resources/testharness.js"></script>
4 <script src="../../resources/testharnessreport.js"></script> 4 <script src="../../resources/testharnessreport.js"></script>
5 <script src="../forms/resources/common.js"></script> 5 <script src="../forms/resources/common.js"></script>
6 <div id="log"></div> 6 <div id="log"></div>
7 <div id="container"></div> 7 <div id="container"></div>
8 <script> 8 <script>
9 if (!window.eventSender) 9 if (!window.eventSender)
10 document.body.textContent = 'This test requires window.eventSender.'; 10 document.body.textContent = 'This test requires window.eventSender.';
11 11
12 test(function() { 12 test(function() {
13 var container = document.querySelector('#container'); 13 var container = document.querySelector('#container');
14 container.innerHTML = '<input id=prev><div style="height:200px;"><span>text< /span></div><input id=next>'; 14 container.innerHTML = '<input id=prev><div style="height:200px;"><span>text< /span></div><input id=next>';
15 hoverOverElement(container.querySelector('span')); 15 hoverOverElement(container.querySelector('span'));
16 eventSender.mouseDown(); 16 eventSender.mouseDown();
17 eventSender.keyDown('\t'); 17 eventSender.keyDown('\t');
18 assert_equals(document.activeElement.id, 'next'); 18 assert_equals(document.activeElement.id, 'next');
19 eventSender.mouseUp();
19 20
20 hoverOverElement(container.querySelector('div')); 21 hoverOverElement(container.querySelector('div'));
21 eventSender.mouseDown(); 22 eventSender.mouseDown();
22 eventSender.keyDown('\t', ['shiftKey']); 23 eventSender.keyDown('\t', ['shiftKey']);
23 assert_equals(document.activeElement.id, 'prev'); 24 assert_equals(document.activeElement.id, 'prev');
25 eventSender.mouseUp();
26
27 container.innerHTML = '<span style="font-size:60px;"><input id=prev>Text Tex t<input id=next></span>';
28 hoverOverElement(container.querySelector('span'));
29 eventSender.mouseDown();
30 eventSender.keyDown('\t');
31 assert_equals(document.activeElement.id, 'next');
32 eventSender.mouseUp();
33
34 hoverOverElement(container.querySelector('span'));
35 eventSender.mouseDown();
36 eventSender.keyDown('\t', ['shiftKey']);
37 assert_equals(document.activeElement.id, 'prev');
38 eventSender.mouseUp();
24 }, 'Mouse press should update sequential focus navigation starting point.'); 39 }, 'Mouse press should update sequential focus navigation starting point.');
25 40
26 test(function() { 41 test(function() {
27 var container = document.querySelector('#container'); 42 var container = document.querySelector('#container');
28 container.innerHTML = '<a href="#fragment"></a><input id=prev><a name="fragm ent"></a><input id=next>'; 43 container.innerHTML = '<a href="#fragment"></a><input id=prev><a name="fragm ent"></a><input id=next>';
29 container.querySelector('a').click(); 44 container.querySelector('a').click();
30 eventSender.keyDown('\t'); 45 eventSender.keyDown('\t');
31 assert_equals(document.activeElement.id, 'next'); 46 assert_equals(document.activeElement.id, 'next');
32 }, 'Fragment navigation should update sequential focus navigation starting point .'); 47 }, 'Fragment navigation should update sequential focus navigation starting point .');
33 48
(...skipping 15 matching lines...) Expand all
49 assert_equals(document.activeElement.id, 'next'); 64 assert_equals(document.activeElement.id, 'next');
50 65
51 container.innerHTML = '<input id=prev><input id=start><input id=next>'; 66 container.innerHTML = '<input id=prev><input id=start><input id=next>';
52 container.querySelector('#start').focus(); 67 container.querySelector('#start').focus();
53 container.querySelector('#start').remove(); 68 container.querySelector('#start').remove();
54 eventSender.keyDown('\t', ['shiftKey']); 69 eventSender.keyDown('\t', ['shiftKey']);
55 assert_equals(document.activeElement.id, 'prev'); 70 assert_equals(document.activeElement.id, 'prev');
56 }, 'After removing a focused element from the documen tree, sequential focus nav igation should start at a place where the focused element was.'); 71 }, 'After removing a focused element from the documen tree, sequential focus nav igation should start at a place where the focused element was.');
57 </script> 72 </script>
58 </body> 73 </body>
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/dom/Document.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698