stylo: Assert against generating nsChangeHint_ReconstructFrame for native anonymous content




CSS Parsing and Computation
9 months ago
2 months ago


(Reporter: bholley, Unassigned)


(Blocks: 2 bugs)

Firefox Tracking Flags

(Not tracked)


This is an invariant in layout, because the frame constructor doesn't really know how to reconstruct frames for NAC [1]. There's no general mechanism to ensure we don't do this, but in practice we mostly [2] have it from the following:
* NAC nodes only match UA rules, and UA rules are careful not to have any dynamic styles that would trigger frame reconstruction
* NAC nodes inherit from their non-NAC parent, but any inherited style that would trigger reconstruction would also presumably trigger it on the parent, at which point we should stop computing change hints on the subtree (we don't do this yet in Stylo, which is bug 1297855).

We're not quite there yet with stylo, given the dependent bugs (and possibly others). I'm hacking around this for now by manually switching that hint off, but we should fix this properly and assert it. Grep for this bug number to find the corresponding hack(s).

[1] modulo a few special cases tagged as restylableAnonymousNode, which should really be called reconstructableAnonymousNode
[2] modulo bug 1250725
Priority: -- → P2
Blocks: 1243581
You need to log in before you can comment on or make changes to this bug.