[whatwg] Fullscreen and event dispatch
joaoe at opera.com
Mon Oct 24 04:42:18 PDT 2011
The requestFullscreen steps tells to dispatch a fullscreenchange event on
the context object, and all containing objects (frames).
First, there should be a better clarification of 'context object'. While
is remarked that it is the object used for the last requestFullScreen call
which was allowed, it should also refer that for ancestor browsing
contexts, it should be the containing frame. This way, fullscreening a
contained document will work just as fine as any other kind of element
reusing the same css, while for the containing document, it's transparent.
Second, the requestFullscreen steps do not cope well if there is already a
previous fullscreen element, either in the same document, or in a
descendant, ancestor or sibling document. The steps tell to loop all the
way up to the top level document and dispatch fullscreenchange events.
I would suggest dispatching it *only* for elements and documents where
there was a fullscreen change, so if we have a top level document A and a
child B, B has two elements, a' and b'. Changing fullscreen from a' to b'
would result in two fullscreenchange events, one for each element, inside
B, while A should not get a event. I have some doubts if the spec allows
this use case though, because the steps for requestFullscreen also mention
that if an ancestor browsing context has a non-null fullscreen element,
then it should not be allowed to proceed, but this restriction does not
apply, again, to sibling elements, or sibling/descendant documents.
Third, perhaps fullscreenchange should be split into fullscreenon and
fullscreenoff events ?
More information about the whatwg