- From: <bugzilla@jessica.w3.org>
- Date: Thu, 22 Sep 2011 22:28:53 +0000
- To: public-html-bugzilla@w3.org
http://www.w3.org/Bugs/Public/show_bug.cgi?id=12559 Ian 'Hixie' Hickson <ian@hixie.ch> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution| |FIXED --- Comment #12 from Ian 'Hixie' Hickson <ian@hixie.ch> 2011-09-22 22:28:51 UTC --- EDITOR'S RESPONSE: This is an Editor's Response to your comment. If you are satisfied with this response, please change the state of this bug to CLOSED. If you have additional information and would like the editor to reconsider, please reopen this bug. If you would like to escalate the issue to the full HTML Working Group, please add the TrackerRequest keyword to this bug, and suggest title and text for the tracker issue; or you may create a tracker issue yourself, if you are able to do so. For more details, see this document: http://dev.w3.org/html5/decision-policy/decision-policy.html Status: Partially Accepted Change Description: see diff given below Rationale: Ok I did this but it ended up being a bit different than what I'd described earlier. * I made the changing of the 'ended' attribute synchronous with the firing of the asynchronous 'ended' event, so it can no longer happen in the middle of a script running. * A standalone media element, when it reaches its end going forwards, if it isn't looping, now pauses automatically. The sequence of events is .ended becomes true, timeupdate fires, .paused becomes true and pause fires, and finally ended fires. * A slaved media element never pauses when it reaches its end, because otherwise it would desync with its controller. The controller, however, does the same 'pause' dance as a standalone media element; when the last slave ends, that media element's .ended becomes true, timeupdate fires on it, ended fires on it, then the media controller pauses and pause fires, then ended fires. * I haven't done anything to make slaved media elements automatically pause when they are unslaved, so it's still possible to have a media element that is ended and not paused. This is necessary because otherwise when you move an element from one slave to another while it's ended, you'd always have to unpause it again, which would be crazy. * Because all this is async rather than happening when the playback actually ends, we have to deal with hostile scripts changing the state out from under us. See the spec for the precise details, but basically the pausing only happens if nothing has screwed around with the media element in the meantime (hopefully I didn't miss any important cases... testing this is going to be hell). (In reply to comment #11) > > > > > > controller.paused > > > Returns true if playback is paused; false otherwise. When this attribute is > > > true, any media element slaved to this controller will be stopped. > > > > Please ignore the non-normative text. It's only useful for people who just want > > a quick introduction and don't need to know the details. You don't qualify for > > that. :-) > > Still needs to be accurate since we don't want to confuse those after a quick > answer either. It's accurate, as far as I can tell. It just tells you what happens, not what to implement. > > > Does "any" in this sentence mean "all"? > > > > They would both mean the same thing in that context, no? > > I am not a native English speaker, but my reading of "any out of a group" is > that it means a single one out of the group - which one doesn't matter. I'd > prefer we use the word "every" in this sentence instead if that's what is > meant. If we used "all" or "every" we'd have to also say "if any" to handle the case where there are none. "Any" is the right word here. It doesn't mean "one", it means "whichever of these that exist". > > For the last comment in comment 6 I meant when playing backwards. > > I see. I'd say it should also go into paused state. Since grouped elements > started at the same time, that shouldn't cause the same kinds of problems as > the different length. I haven't made anything pause when going backwards. It also doesn't fire the ended event or indeed set .ended to true, either on the media element or the controller. -- Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug.
Received on Thursday, 22 September 2011 22:28:59 UTC