| <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
| <html> |
| <head> |
| <script src="../resources/js-test-pre.js"></script> |
| </head> |
| <body id="body"> |
| |
| <div id="content" contenteditable tabindex="0"> |
| hello<br> |
| <b>world</b> |
| </div> |
| |
| <p id="description"></p> |
| <div id="console"></div> |
| |
| <script> |
| |
| description("This tests that a contenteditable region will send an AXValueChange notification when JS methods for changing children are used."); |
| |
| var notification = 0; |
| var textArea = 0; |
| var valueChangeCount = 0; |
| function callback(notification) { |
| if (notification == "AXValueChanged") { |
| debug("Updated value: " + textArea.stringValue); |
| valueChangeCount++; |
| |
| if (valueChangeCount == 1) { |
| document.getElementById("content").innerHTML = "Test2"; |
| } |
| else if (valueChangeCount == 2) { |
| document.getElementById("content").innerText = "Test3"; |
| } |
| else if (valueChangeCount == 3) { |
| document.getElementById("content").appendChild(document.createTextNode("Test4")); |
| } |
| else if (valueChangeCount == 4) { |
| document.getElementById("content").style.visibility = "hidden"; |
| textArea.removeNotificationListener(); |
| finishJSTest(); |
| } |
| } |
| } |
| |
| if (window.accessibilityController) { |
| window.jsTestIsAsync = true; |
| |
| textArea = accessibilityController.accessibleElementById("content"); |
| textArea.addNotificationListener(callback); |
| |
| // Send value changes. |
| document.getElementById("content").innerText = "Test1"; |
| } |
| |
| </script> |
| |
| <script src="../resources/js-test-post.js"></script> |
| </body> |
| </html> |