| <!DOCTYPE html> |
| |
| <head> |
| <title>Cobalt preload state visibility test</title> |
| <script src='black_box_js_test_utils.js'></script> |
| </head> |
| |
| <body> |
| <h1> |
| <span>ID element</span> |
| </h1> |
| <script> |
| // In preload mode, visibility should be "hidden" and window/document |
| // should not have focus. |
| assertEqual("hidden", document.visibilityState); |
| assertFalse(document.hasFocus()); |
| |
| var visibilityStateVisible = false; |
| // Wait for visibility change to verify visibilityState and having focus. |
| function handleVisibilityChange() { |
| assertFalse(document.hasFocus()); |
| if (visibilityStateVisible) { |
| assertEqual("hidden", document.visibilityState); |
| // Allow the app to become visible and then hidden at most once. |
| } else { |
| assertEqual("visible", document.visibilityState); |
| visibilityStateVisible = true; |
| onEndTest(); |
| } |
| } |
| document.addEventListener("visibilitychange", handleVisibilityChange); |
| setupFinished(); |
| </script> |
| </body> |