Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1209)

Unified Diff: Source/core/html/track/TextTrack.h

Issue 92783002: Move code that applies to audio and video tracks into TrackBase. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@tmp
Patch Set: Fix copyright, explicit constructor, and AtomicString oldKind, and replace mediaElement() with trac… Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/core/html/track/TextTrack.h
diff --git a/Source/core/html/track/TextTrack.h b/Source/core/html/track/TextTrack.h
index f89b88fdee889e71fcbd62e4c90c8dce1d6c4c6c..c38a72bcaeafb951cb25c345dd48f5753b0472ec 100644
--- a/Source/core/html/track/TextTrack.h
+++ b/Source/core/html/track/TextTrack.h
@@ -35,10 +35,10 @@ namespace WebCore {
class Document;
class ExceptionState;
-class HTMLMediaElement;
class TextTrack;
class TextTrackCue;
class TextTrackCueList;
+class TextTrackList;
class VTTRegion;
class VTTRegionList;
@@ -53,7 +53,8 @@ public:
virtual void textTrackRemoveCue(TextTrack*, PassRefPtr<TextTrackCue>) = 0;
};
-class TextTrack : public TrackBase, public ScriptWrappable {
+class TextTrack : public TrackBase, public ScriptWrappable, public EventTargetWithInlineData {
+ REFCOUNTED_EVENT_TARGET(TrackBase);
public:
static PassRefPtr<TextTrack> create(Document& document, TextTrackClient* client, const AtomicString& kind, const AtomicString& label, const AtomicString& language)
{
@@ -61,11 +62,10 @@ public:
}
virtual ~TextTrack();
- void setMediaElement(HTMLMediaElement* element) { m_mediaElement = element; }
- HTMLMediaElement* mediaElement() { return m_mediaElement; }
+ void setTrackList(TextTrackList* trackList) { m_trackList = trackList; }
+ TextTrackList* trackList() { return m_trackList; }
- AtomicString kind() const { return m_kind; }
- void setKind(const AtomicString&);
+ virtual void setKind(const AtomicString&) OVERRIDE;
static const AtomicString& subtitlesKeyword();
static const AtomicString& captionsKeyword();
@@ -74,15 +74,6 @@ public:
static const AtomicString& metadataKeyword();
static bool isValidKindKeyword(const AtomicString&);
- AtomicString label() const { return m_label; }
- void setLabel(const AtomicString& label) { m_label = label; }
-
- AtomicString language() const { return m_language; }
- void setLanguage(const AtomicString& language) { m_language = language; }
-
- AtomicString id() const { return m_id; }
- void setId(const AtomicString& id) { m_id = id; }
-
static const AtomicString& disabledKeyword();
static const AtomicString& hiddenKeyword();
static const AtomicString& showingKeyword();
@@ -138,6 +129,9 @@ public:
protected:
TextTrack(Document&, TextTrackClient*, const AtomicString& kind, const AtomicString& label, const AtomicString& language, const AtomicString& id, TextTrackType);
+ virtual bool isValidKind(const AtomicString& kind) const OVERRIDE { return isValidKindKeyword(kind); }
acolwell GONE FROM CHROMIUM 2013/12/06 01:35:54 nit: isValidKindKeyword() doesn't appear to be use
+ virtual AtomicString defaultKind() const OVERRIDE { return subtitlesKeyword(); }
+
RefPtr<TextTrackCueList> m_cues;
private:
@@ -149,11 +143,7 @@ private:
// FIXME: Remove this pointer and get the Document from m_client
Document* m_document;
- HTMLMediaElement* m_mediaElement;
- AtomicString m_kind;
- AtomicString m_label;
- AtomicString m_language;
- AtomicString m_id;
+ TextTrackList* m_trackList;
AtomicString m_mode;
TextTrackClient* m_client;
TextTrackType m_trackType;

Powered by Google App Engine
This is Rietveld 408576698