| <!DOCTYPE html> | |
| <html> | |
| <title>Event handlers in isolated worlds for user gesture generated events should should the same permissions as handlers within the page</title> | |
| <script> | |
| // This test is meaningless without a testRunner. | |
| if (window.testRunner && window.eventSender) { | |
| testRunner.setCanOpenWindows(true); | |
| testRunner.waitUntilDone(); | |
| testRunner.dumpAsText(); | |
| function newTest(title) | |
| { | |
| document.getElementById("log").innerHTML += "<br>" + title + ": "; | |
| } | |
| function pass() | |
| { | |
| document.getElementById("log").innerHTML += "PASS\n"; | |
| testRunner.notifyDone(); | |
| } | |
| // (This function is run within an isolated world) | |
| function userGestureEventListener() | |
| { | |
| // Register an event handler that will try to perform an action that can only be initiated by a user gesture (opening a window). | |
| document.getElementById("button1").onclick = function() | |
| { | |
| window.open("resources/userGestureEvents-second-window.html", "resources/userGestureEvents-second-window.html"); | |
| } | |
| } | |
| function runTestInWorld(worldId, funcName) | |
| { | |
| testRunner.evaluateScriptInIsolatedWorld(worldId, String(eval(funcName)) + "\n" + funcName + "();"); | |
| } | |
| function runTest() | |
| { | |
| newTest("Event handlers in isolated worlds for user gesture generated events should should the same permissions as handlers within the page."); | |
| runTestInWorld(1, "userGestureEventListener"); | |
| // Click somewhere on the button! | |
| var testDiv = document.getElementById("test"); | |
| eventSender.mouseMoveTo(testDiv.offsetLeft + 5, testDiv.offsetTop + 5); | |
| eventSender.mouseDown(); | |
| eventSender.mouseUp(); | |
| } | |
| } else | |
| document.getElementById("log").innerHTML += "FAIL\n"; | |
| </script> | |
| <body onload="runTest()"> | |
| <div id="test"><button id='button1'></button></div> | |
| <div id="log"></div> | |
| </body> | |
| </html> |