| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc. All rights
reserved. | 2 * Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc. All rights
reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 194 blink::WebMediaPlayer::TrackId addAudioTrack(const String& id, blink::WebMed
iaPlayerClient::AudioTrackKind, const AtomicString& label, const AtomicString& l
anguage, bool enabled); | 194 blink::WebMediaPlayer::TrackId addAudioTrack(const String& id, blink::WebMed
iaPlayerClient::AudioTrackKind, const AtomicString& label, const AtomicString& l
anguage, bool enabled); |
| 195 void removeAudioTrack(blink::WebMediaPlayer::TrackId); | 195 void removeAudioTrack(blink::WebMediaPlayer::TrackId); |
| 196 blink::WebMediaPlayer::TrackId addVideoTrack(const String& id, blink::WebMed
iaPlayerClient::VideoTrackKind, const AtomicString& label, const AtomicString& l
anguage, bool selected); | 196 blink::WebMediaPlayer::TrackId addVideoTrack(const String& id, blink::WebMed
iaPlayerClient::VideoTrackKind, const AtomicString& label, const AtomicString& l
anguage, bool selected); |
| 197 void removeVideoTrack(blink::WebMediaPlayer::TrackId); | 197 void removeVideoTrack(blink::WebMediaPlayer::TrackId); |
| 198 | 198 |
| 199 virtual void mediaPlayerDidAddTextTrack(blink::WebInbandTextTrack*) override
final; | 199 virtual void mediaPlayerDidAddTextTrack(blink::WebInbandTextTrack*) override
final; |
| 200 virtual void mediaPlayerDidRemoveTextTrack(blink::WebInbandTextTrack*) overr
ide final; | 200 virtual void mediaPlayerDidRemoveTextTrack(blink::WebInbandTextTrack*) overr
ide final; |
| 201 // FIXME: Remove this when WebMediaPlayerClientImpl::loadInternal does not d
epend on it. | 201 // FIXME: Remove this when WebMediaPlayerClientImpl::loadInternal does not d
epend on it. |
| 202 virtual KURL mediaPlayerPosterURL() override { return KURL(); } | 202 virtual KURL mediaPlayerPosterURL() override { return KURL(); } |
| 203 | 203 |
| 204 class TrackGroup { | |
| 205 STACK_ALLOCATED(); | |
| 206 public: | |
| 207 enum GroupKind { CaptionsAndSubtitles, Description, Chapter, Metadata, O
ther }; | |
| 208 | |
| 209 explicit TrackGroup(GroupKind kind) | |
| 210 : visibleTrack(nullptr) | |
| 211 , defaultTrack(nullptr) | |
| 212 , kind(kind) | |
| 213 , hasSrcLang(false) | |
| 214 { | |
| 215 } | |
| 216 | |
| 217 WillBeHeapVector<RefPtrWillBeMember<TextTrack>> tracks; | |
| 218 RefPtrWillBeMember<TextTrack> visibleTrack; | |
| 219 RefPtrWillBeMember<TextTrack> defaultTrack; | |
| 220 GroupKind kind; | |
| 221 bool hasSrcLang; | |
| 222 }; | |
| 223 | |
| 224 void configureTextTrackGroupForLanguage(const TrackGroup&) const; | |
| 225 void honorUserPreferencesForAutomaticTextTrackSelection(); | 204 void honorUserPreferencesForAutomaticTextTrackSelection(); |
| 226 void performAutomaticTextTrackSelection(const TrackGroup&); | |
| 227 void enableDefaultMetadataTextTracks(const TrackGroup&); | |
| 228 | 205 |
| 229 bool textTracksAreReady() const; | 206 bool textTracksAreReady() const; |
| 230 enum VisibilityChangeAssumption { | 207 enum VisibilityChangeAssumption { |
| 231 AssumeNoVisibleChange, | 208 AssumeNoVisibleChange, |
| 232 AssumeVisibleChange | 209 AssumeVisibleChange |
| 233 }; | 210 }; |
| 234 void configureTextTrackDisplay(VisibilityChangeAssumption); | 211 void configureTextTrackDisplay(VisibilityChangeAssumption); |
| 235 void updateTextTrackDisplay(); | 212 void updateTextTrackDisplay(); |
| 236 void textTrackReadyStateChanged(TextTrack*); | 213 void textTrackReadyStateChanged(TextTrack*); |
| 237 | 214 |
| (...skipping 396 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 634 inline bool isHTMLMediaElement(const HTMLElement& element) | 611 inline bool isHTMLMediaElement(const HTMLElement& element) |
| 635 { | 612 { |
| 636 return isHTMLAudioElement(element) || isHTMLVideoElement(element); | 613 return isHTMLAudioElement(element) || isHTMLVideoElement(element); |
| 637 } | 614 } |
| 638 | 615 |
| 639 DEFINE_HTMLELEMENT_TYPE_CASTS_WITH_FUNCTION(HTMLMediaElement); | 616 DEFINE_HTMLELEMENT_TYPE_CASTS_WITH_FUNCTION(HTMLMediaElement); |
| 640 | 617 |
| 641 } // namespace blink | 618 } // namespace blink |
| 642 | 619 |
| 643 #endif // HTMLMediaElement_h | 620 #endif // HTMLMediaElement_h |
| OLD | NEW |