| <!DOCTYPE html> |
| <title>Remove the parent of the fullscreen element</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="../trusted-click.js"></script> |
| <div id="log"></div> |
| <div> |
| <div id="child"></div> |
| </div> |
| <script> |
| async_test(function(t) |
| { |
| t.add_cleanup(() => { |
| Promise.resolve(document.exitFullscreen()).catch(() => {}); |
| }); |
| var child = document.getElementById("child"); |
| trusted_request(t, child); |
| document.onfullscreenchange = t.step_func(function(event) |
| { |
| assert_equals(document.fullscreenElement, child); |
| assert_equals(event.target, child); |
| child.parentNode.remove(); |
| // Because /child/ was removed from the top layer, the fullscreen |
| // element becomes null synchronously. |
| assert_equals(document.fullscreenElement, null); |
| document.onfullscreenchange = t.step_func_done(function(event) |
| { |
| assert_equals(document.fullscreenElement, null); |
| assert_equals(event.target, document); |
| }); |
| }); |
| }); |
| </script> |