shadow-relatedTarget.html (1047B)
1 <!DOCTYPE html> 2 <script src="/resources/testharness.js"></script> 3 <script src="/resources/testharnessreport.js"></script> 4 <!-- 5 This test is adopted from Olli Pettay's test case at 6 http://mozilla.pettay.fi/shadow_focus.html 7 --> 8 <div id="host"></div> 9 <input id="lightInput"> 10 <script> 11 const root = host.attachShadow({ mode: "closed" }); 12 root.innerHTML = "<input id='shadowInput'>"; 13 14 async_test((test) => { 15 root.getElementById("shadowInput").focus(); 16 window.addEventListener("focus", test.step_func_done((e) => { 17 assert_equals(e.relatedTarget, host); 18 }, "relatedTarget should be pointing to shadow host."), true); 19 lightInput.focus(); 20 }, "relatedTarget should not leak at capturing phase, at window object."); 21 22 async_test((test) => { 23 root.getElementById("shadowInput").focus(); 24 lightInput.addEventListener("focus", test.step_func_done((e) => { 25 assert_equals(e.relatedTarget, host); 26 }, "relatedTarget should be pointing to shadow host."), true); 27 lightInput.focus(); 28 }, "relatedTarget should not leak at target."); 29 30 </script>