fune/testing/web-platform/tests/css/css-scoping/shadow-reassign-dynamic-001.html
Emilio Cobos Álvarez e81a508a48 Bug 1435632: Fix the logic to do layout stuff after reassigning a slot. r=smaug,xidorn
The dirty bit fiddling is nontrivial, but it's pretty much what we do for
invalidation and allows to keep this incrementally easily.

The only caller that we cared about for the GetFlattenedTreeParent check in
DestroyFramesForAndRestyle was the old ShadowRoot invalidation functions that
went away.

MozReview-Commit-ID: GmgPPJ6d2qX
2018-03-29 12:34:38 +02:00

22 lines
899 B
HTML

<!DOCTYPE html>
<meta charset="utf-8">
<title>CSS Scoping: Dynamic reassignment of a slot.</title>
<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
<link rel="help" href="https://drafts.csswg.org/css-scoping/#selectors-data-model">
<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1435632">
<link rel="match" href="reference/green-box.html"/>
<div id="host">
<div id="green" style="background: green"></div>
<div id="red" style="background: red" slot="myslot"></div>
</div>
<script>
let root = host.attachShadow({ mode: "open" });
root.innerHTML = `
<style>::slotted(div) { width: 100px; height: 100px }</style>
<p>Test passes if you see a single 100px by 100px green box below.</p>
<slot name="myslot">FAIL</slot>
`;
document.body.offsetTop;
green.setAttribute("slot", "myslot");
red.removeAttribute("slot");
</script>