blob: bf64a1421f56e2696dfe6829a6929f402b2ff01e [file] [log] [blame]
<!DOCTYPE html>
<title>Test CSS selector :picture-in-picture</title>
<script src="/common/media.js"></script>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<script src="resources/picture-in-picture-helpers.js"></script>
<style>
video {
color: rgb(0, 0, 255);
}
:picture-in-picture {
color: rgb(0, 255, 0);
}
/* illegal selector list */
video, :picture-in-picture(*) {
color: rgb(255, 0, 0);
}
</style>
<body></body>
<script>
promise_test(async t => {
const video = await loadVideo();
document.body.appendChild(video);
assert_equals(getComputedStyle(video).color, 'rgb(0, 0, 255)');
await requestPictureInPictureWithTrustedClick(video);
assert_equals(getComputedStyle(video).color, 'rgb(0, 255, 0)');
await document.exitPictureInPicture();
assert_equals(getComputedStyle(video).color, 'rgb(0, 0, 255)');
}, 'Entering and leaving Picture-in-Picture toggles CSS selector');
</script>