[Bug 27775] [Shadow]: Define the behavior of *closed* shadow trees.

https://www.w3.org/Bugs/Public/show_bug.cgi?id=27775

--- Comment #1 from Olli Pettay <bugs@pettay.fi> ---
(In reply to Hayato Ito from comment #0)
> I am wondering whether it is worth or not to expose this *hidden* concept,
> UA shadow trees, clearly in the spec, as a *closed shadow tree*, a tentative
> name borrowed from the another thread, so that we can explain the behavior
> of builtin elements in terms of Shadow DOM.
Do we really want that? Wouldn't it bound implementations to use similar
structures for 
form elements.

> In Blink, as some of you might know, ShadowRoot object has an enum
> internally, UserAgentShadowRoot or AuthorShadowRoot. Some builtin elements,
> such as <video> or <input>, use UserAgentShadowRoot in their implementation
> as you imagine.
> Currently, the behavior of this kind of shadow trees is only explained by
> Blink's C++ code.
> It'd be nice that I could write down a well-defined behavior of a closed
> shadow tree somewhere. That should be in the spec. I don't want other
> browser vendors to do a kind of *reverse-engineering*.

But why do we need to spec browser specific behavior? Maybe I'm missing what
you're proposing here.


One good thing though is that if 'closed shadow tree' is spec'ed, it might
force us to spec
how proper encapsulation and information hiding works.
So maybe we do want it after all, but just not spec what kind of closed shadow
tree various elements may have.
That would be up to the UA.
Or... maybe we shouldn't define 'closed shadow tree', but something like
'domain specific shadow tree', and UA would just happen to form a 'system'
domain itself.
Assuming 'dsst' would hide information by default, and could opt-in to
not-hide, UA shadow DOM would just work
by default. So, I think we want this, and no special 'closed shadow tree'


> - Needs to discuss:
>   Whether or not to allow calling Element.createShadowRoot() for the shadow
> host which has the closed youngest shadow tree.
>   If we allow it, we might have to consider the followings also:
I think the end goal should be to allow it. There shouldn't be special cases or
inconsistencies.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Wednesday, 7 January 2015 11:22:21 UTC