Summary: | Custom elements created by the parser in a connected position have their constructors and connectedCallbacks called out of order | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Russell Bicknell <bicknellr> | ||||
Component: | DOM | Assignee: | Nobody <webkit-unassigned> | ||||
Status: | RESOLVED DUPLICATE | ||||||
Severity: | Normal | CC: | annevk, bicknellr, cdumez, fred.wang, rniwa, webkit-bug-importer | ||||
Priority: | P2 | Keywords: | InRadar | ||||
Version: | Safari 11 | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
See Also: | https://bugs.webkit.org/show_bug.cgi?id=188327 | ||||||
Attachments: |
|
Description
Russell Bicknell
2018-08-02 16:32:38 PDT
Chrome and Firefox seem to have the opposite problem; their `innerHTML` setters act as if the elements being created were in the main document: https://bugs.chromium.org/p/chromium/issues/detail?id=870512 https://bugzilla.mozilla.org/show_bug.cgi?id=1480632 Do we have any WPT tests that cover these cases? For the synchronous case ('in-document HTML'), the patch on bug 188190 is supposed to force execution of the connectedCallBack immediately after insertion of the element (There is WPT test to ensure the element is indeed empty when connectedCallBack is called). That might improve things, but I don't know beforehand what we do regarding the order of constructor call / element insertion, especially since HTMLConstructionSite uses an m_taskQueue to delay insertion. (BTW, the other two bugs I mentioned are now closed: my interpretation of the spec was wrong.) (In reply to Russell Bicknell from comment #4) > (BTW, the other two bugs I mentioned are now closed: my interpretation of > the spec was wrong.) Thanks for the update. For the non-synchronous case (innerHTML) note that bug 188327 was recently fixed. Okay, this is caused by the bug 188189 so I'll fix it there. *** This bug has been marked as a duplicate of bug 188189 *** |