| OLD | NEW |
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 <html> | 2 <html> |
| 3 <body> | 3 <body> |
| 4 | 4 |
| 5 <script> | 5 <script> |
| 6 | 6 |
| 7 function setUp() { | 7 function setUp() { |
| 8 loadTimeData.data = { | 8 loadTimeData.data = { |
| 9 'deletableItemDeleteButtonTitle': 'test_deletable_button_title' | 9 'deletableItemDeleteButtonTitle': 'test_deletable_button_title' |
| 10 }; | 10 }; |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 101 // Export. | 101 // Export. |
| 102 return { | 102 return { |
| 103 TestItemList: TestItemList | 103 TestItemList: TestItemList |
| 104 }; | 104 }; |
| 105 | 105 |
| 106 }) | 106 }) |
| 107 } | 107 } |
| 108 | 108 |
| 109 /** | 109 /** |
| 110 * @param {!EventTarget} target Where to send the event. | 110 * @param {!EventTarget} target Where to send the event. |
| 111 * @param {!string} keyIdentifier Which key to send. | 111 * @param {!string} key Which key to send. |
| 112 */ | 112 */ |
| 113 function sendKeyDownEvent(target, keyIdentifier) { | 113 function sendKeyDownEvent(target, key) { |
| 114 var event = document.createEvent('KeyboardEvent'); | 114 var event = new KeyboardEvent('keydown', |
| 115 event.initKeyboardEvent('keydown', true, true, window, keyIdentifier); | 115 {bubbles: true, cancelable: true, key: key}); |
| 116 assertEquals(keyIdentifier, event.keyIdentifier); | |
| 117 target.dispatchEvent(event); | 116 target.dispatchEvent(event); |
| 118 } | 117 } |
| 119 | 118 |
| 120 /** | 119 /** |
| 121 * Test that exactly one item in the list is focusable after navigating the | 120 * Test that exactly one item in the list is focusable after navigating the |
| 122 * list using up and down arrow keys. | 121 * list using up and down arrow keys. |
| 123 */ | 122 */ |
| 124 function testUpDownFocus() { | 123 function testUpDownFocus() { |
| 125 var list = document.createElement('ul'); | 124 var list = document.createElement('ul'); |
| 126 list.style.position = 'absolute'; | 125 list.style.position = 'absolute'; |
| 127 list.style.width = '800px'; | 126 list.style.width = '800px'; |
| 128 list.style.height = '800px'; | 127 list.style.height = '800px'; |
| 129 options.TestItemList.decorate(list); | 128 options.TestItemList.decorate(list); |
| 130 document.body.appendChild(list); | 129 document.body.appendChild(list); |
| 131 | 130 |
| 132 var model = new cr.ui.ArrayDataModel(['itemA', 'itemB', 'itemC']); | 131 var model = new cr.ui.ArrayDataModel(['itemA', 'itemB', 'itemC']); |
| 133 list.dataModel = model; | 132 list.dataModel = model; |
| 134 list.selectionModel.setIndexSelected(0, true); | 133 list.selectionModel.setIndexSelected(0, true); |
| 135 list.selectionModel.leadIndex = 0; | 134 list.selectionModel.leadIndex = 0; |
| 136 | 135 |
| 137 assertTrue(list.hasExactlyOneItemFocusable(0)); | 136 assertTrue(list.hasExactlyOneItemFocusable(0)); |
| 138 sendKeyDownEvent(list, 'Down'); | 137 sendKeyDownEvent(list, 'ArrowDown'); |
| 139 assertTrue(list.hasExactlyOneItemFocusable(1)); | 138 assertTrue(list.hasExactlyOneItemFocusable(1)); |
| 140 sendKeyDownEvent(list, 'Down'); | 139 sendKeyDownEvent(list, 'ArrowDown'); |
| 141 assertTrue(list.hasExactlyOneItemFocusable(2)); | 140 assertTrue(list.hasExactlyOneItemFocusable(2)); |
| 142 sendKeyDownEvent(list, 'Up'); | 141 sendKeyDownEvent(list, 'ArrowUp'); |
| 143 assertTrue(list.hasExactlyOneItemFocusable(1)); | 142 assertTrue(list.hasExactlyOneItemFocusable(1)); |
| 144 sendKeyDownEvent(list, 'Up'); | 143 sendKeyDownEvent(list, 'ArrowUp'); |
| 145 assertTrue(list.hasExactlyOneItemFocusable(0)); | 144 assertTrue(list.hasExactlyOneItemFocusable(0)); |
| 146 sendKeyDownEvent(list, 'Down'); | 145 sendKeyDownEvent(list, 'ArrowDown'); |
| 147 assertTrue(list.hasExactlyOneItemFocusable(1)); | 146 assertTrue(list.hasExactlyOneItemFocusable(1)); |
| 148 } | 147 } |
| 149 | 148 |
| 150 </script> | 149 </script> |
| 151 | 150 |
| 152 </body> | 151 </body> |
| 153 </html> | 152 </html> |
| OLD | NEW |