Commit Graph

7 Commits

Author SHA1 Message Date
Ralph Giles
87be796147 Bug 894104 - Part 3: remove TextTrackCue's mGlobal. r=bz
From 095c76c72dd5915b2fa8ec74f4e2b0b45de244f1 Mon Sep 17 00:00:00 2001
Since we keep a document reference we no longer need the
separate global. It was only used in GetParentObject() and
we can return nullptr there (meaning 'use whatever magic global')
or return the document instead, which is what this patch does.
2013-07-18 15:01:48 -07:00
Ralph Giles
5dd627ae07 Bug 894104 - Part 1: Retain a document reference for GetCueAsHTML.
From 447985000db919e2f054012ca10f03d626c401b1 Mon Sep 17 00:00:00 2001
 r=bz
Save a copy of the owning document at creation time instead
of looking it up from mGlobal in each call. This ensures it
is available even if we're called after our window is unlinked
at teardown.

Make the constructors throw if a window is not available,
so we can return an INVALID_STATE_ERR if we're called
in an incomplete environment.
2013-07-16 22:14:40 -07:00
Ralph Giles
d187fe7323 Bug 887463 - remove webvtt parser library. r=cpearce. 2013-07-09 17:02:00 -07:00
Rick Eyre
ecb691da3b Bug 882714 - Implement TextTrackCue::DisplayState r=rillian
- Renamed mCueDiv to mDisplayState to match spec.
- Introduced mReset which is set whenever TextTrackCue changes in
a way that will mean we have to rebuild the computed cuetext of the
TextTrackCue.
2013-07-04 23:24:43 +02:00
Caitlin Potter
f4ca533bc8 Bug 882549 - Don't rely on mElement to find nsIDocument in TextTrackCue. r=rillian, r=smaug
Find nsIDocument via mGlobal (as nsPIDOMWindow) rather than via pointer to
HTMLTrackElement. (bz from #content has explained how we can access
nsPIDOMWindow and nsIDocument without having to ask the HTMLTrackElement)

For the time being, there are many null-ness checks for both 'window' and
'document', and no mechanism to report errors other than returning nullptr
where possible. This will be addressed in a followup bug.

Also adds a test for mHead nullness in TextTrackCue::ConvertNodeTreeToDOMTree
to prevent SIGSEV.
2013-06-19 14:02:04 -04:00
Rick Eyre
73e8300de5 Bug 833382 - Implement WebVTTLoadListener r=cpearce,bz
- Implemented WebVTTLoadListener to manage the webvtt parser.
- TextTrackCue now handles the conversion of webvtt nodes to
  anonymous content which will be displayed on the video div
  overlay.
- HTMLTrackElement manages the lifetime of the WebVTTLoadListener.
2013-06-10 08:30:00 -07:00
Ralph Giles
d98efa09c2 Bug 833385 - Implement HTMLTrackElement and TextTrack. r=bz,Ms2ger
Add webidl interfaces and implementations of the HTML <track>
element and related TextTrack, TextTrackList, TextTrackCue,
and TextTrackCueList dom objects.

Visibility is controlled by the media.webvtt.enabled pref,
which defaults to false.

HTMLMediaElement:NewURIFromString() is hoisted to
nsGenericHTMLElement so it's available to the track
element as well.

This patch is primarily work by Dale Karp, David Humphrey
and others as Seneca College.
2013-05-22 00:14:00 +08:00