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

Side by Side Diff: Source/core/html/HTMLMediaElement.h

Issue 1082533002: Support text track selection in video controls (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Addressed comments from fs Created 5 years, 8 months 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 unified diff | Download patch
OLDNEW
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 192 matching lines...) Expand 10 before | Expand all | Expand 10 after
203 enum VisibilityChangeAssumption { 203 enum VisibilityChangeAssumption {
204 AssumeNoVisibleChange, 204 AssumeNoVisibleChange,
205 AssumeVisibleChange 205 AssumeVisibleChange
206 }; 206 };
207 void configureTextTrackDisplay(VisibilityChangeAssumption); 207 void configureTextTrackDisplay(VisibilityChangeAssumption);
208 void updateTextTrackDisplay(); 208 void updateTextTrackDisplay();
209 double lastSeekTime() const { return m_lastSeekTime; } 209 double lastSeekTime() const { return m_lastSeekTime; }
210 void textTrackReadyStateChanged(TextTrack*); 210 void textTrackReadyStateChanged(TextTrack*);
211 211
212 void textTrackModeChanged(TextTrack*); 212 void textTrackModeChanged(TextTrack*);
213 void setAutomaticTextTrackSelection(bool);
fs 2015/04/17 11:54:46 This should probably have an "Enabled" suffix to r
fs 2015/04/17 12:06:25 With the below, I think this could just be: void
srivats 2015/04/21 01:48:55 Done.
213 214
214 // EventTarget function. 215 // EventTarget function.
215 // Both Node (via HTMLElement) and ActiveDOMObject define this method, which 216 // Both Node (via HTMLElement) and ActiveDOMObject define this method, which
216 // causes an ambiguity error at compile time. This class's constructor 217 // causes an ambiguity error at compile time. This class's constructor
217 // ensures that both implementations return document, so return the result 218 // ensures that both implementations return document, so return the result
218 // of one of them here. 219 // of one of them here.
219 using HTMLElement::executionContext; 220 using HTMLElement::executionContext;
220 221
221 bool hasSingleSecurityOrigin() const { return !m_player || (webMediaPlayer() && webMediaPlayer()->hasSingleSecurityOrigin()); } 222 bool hasSingleSecurityOrigin() const { return !m_player || (webMediaPlayer() && webMediaPlayer()->hasSingleSecurityOrigin()); }
222 223
(...skipping 333 matching lines...) Expand 10 before | Expand all | Expand 10 after
556 bool m_isFinalizing : 1; 557 bool m_isFinalizing : 1;
557 bool m_closeMediaSourceWhenFinalizing : 1; 558 bool m_closeMediaSourceWhenFinalizing : 1;
558 #endif 559 #endif
559 bool m_initialPlayWithoutUserGestures : 1; 560 bool m_initialPlayWithoutUserGestures : 1;
560 bool m_autoplayMediaCounted : 1; 561 bool m_autoplayMediaCounted : 1;
561 562
562 RefPtrWillBeMember<AudioTrackList> m_audioTracks; 563 RefPtrWillBeMember<AudioTrackList> m_audioTracks;
563 RefPtrWillBeMember<VideoTrackList> m_videoTracks; 564 RefPtrWillBeMember<VideoTrackList> m_videoTracks;
564 RefPtrWillBeMember<TextTrackList> m_textTracks; 565 RefPtrWillBeMember<TextTrackList> m_textTracks;
565 WillBeHeapVector<RefPtrWillBeMember<TextTrack>> m_textTracksWhenResourceSele ctionBegan; 566 WillBeHeapVector<RefPtrWillBeMember<TextTrack>> m_textTracksWhenResourceSele ctionBegan;
567 bool m_performAutomaticTextTrackSelection : 1;
fs 2015/04/17 11:54:46 Move this up to m_closedCaptionsVisible or the oth
fs 2015/04/17 12:06:25 I think we should take the opportunity, and introd
srivats 2015/04/21 01:48:55 Done.
566 568
567 OwnPtrWillBeMember<CueTimeline> m_cueTimeline; 569 OwnPtrWillBeMember<CueTimeline> m_cueTimeline;
568 570
569 #if ENABLE(WEB_AUDIO) 571 #if ENABLE(WEB_AUDIO)
570 // This is a weak reference, since m_audioSourceNode holds a reference to us . 572 // This is a weak reference, since m_audioSourceNode holds a reference to us .
571 // FIXME: Oilpan: Consider making this a strongly traced pointer with oilpan where strong cycles are not a problem. 573 // FIXME: Oilpan: Consider making this a strongly traced pointer with oilpan where strong cycles are not a problem.
572 GC_PLUGIN_IGNORE("http://crbug.com/404577") 574 GC_PLUGIN_IGNORE("http://crbug.com/404577")
573 RawPtrWillBeWeakMember<AudioSourceProviderClient> m_audioSourceNode; 575 RawPtrWillBeWeakMember<AudioSourceProviderClient> m_audioSourceNode;
574 #endif 576 #endif
575 577
576 friend class MediaController; 578 friend class MediaController;
577 RefPtrWillBeMember<MediaController> m_mediaController; 579 RefPtrWillBeMember<MediaController> m_mediaController;
578 580
579 friend class Internals; 581 friend class Internals;
580 friend class TrackDisplayUpdateScope; 582 friend class TrackDisplayUpdateScope;
581 583
582 static URLRegistry* s_mediaStreamRegistry; 584 static URLRegistry* s_mediaStreamRegistry;
583 }; 585 };
584 586
585 inline bool isHTMLMediaElement(const HTMLElement& element) 587 inline bool isHTMLMediaElement(const HTMLElement& element)
586 { 588 {
587 return isHTMLAudioElement(element) || isHTMLVideoElement(element); 589 return isHTMLAudioElement(element) || isHTMLVideoElement(element);
588 } 590 }
589 591
590 DEFINE_HTMLELEMENT_TYPE_CASTS_WITH_FUNCTION(HTMLMediaElement); 592 DEFINE_HTMLELEMENT_TYPE_CASTS_WITH_FUNCTION(HTMLMediaElement);
591 593
592 } // namespace blink 594 } // namespace blink
593 595
594 #endif // HTMLMediaElement_h 596 #endif // HTMLMediaElement_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698