| <html> |
| <head> |
| <script src="../../resources/js-test-pre.js"></script> |
| <script src="resources/accessibility-helper.js"></script> |
| <style> |
| a { |
| outline-offset: -3px; |
| } |
| a:focus { |
| outline: 3px solid rgba(131,192,253,0.5); |
| } |
| </style> |
| </head> |
| <body> |
| <div id="content"> |
| <button id="button">start</button> |
| <a href="#">Apple</a> |
| <a href="#">Orange</a> |
| <a href="#">Pear</a> |
| </div> |
| <p id="description"></p> |
| <div id="console"></div> |
| <script> |
| window.jsTestIsAsync = true; |
| description("This tests that tabbing focus onto elements will send out notifications"); |
| |
| if (window.testRunner && window.accessibilityController) { |
| |
| testRunner.overridePreference("WebKitTabToLinksPreferenceKey", 1); |
| accessibilityController.enableEnhancedAccessibility(true); |
| |
| var count = 0; |
| accessibilityController.addNotificationListener(function(element, notification) { |
| if (notification != "AXFocusChanged") |
| return; |
| count++; |
| if (count == 3) { |
| finishJSTest(); |
| } |
| }); |
| |
| // Tab 3 times we should be able to get same count of notificaitons |
| shouldBeTrue("count == 0"); |
| for (var i = 1; i <= 3; i++) |
| eventSender.keyDown("\t"); |
| |
| document.getElementById("content").style.visibility = "hidden"; |
| } |
| </script> |
| <script src="../../resources/js-test-post.js"></script> |
| </body> |
| </html> |