#include "third_party/blink/renderer/core/html/track/cue_timeline.h"
#include <algorithm>
#include "third_party/blink/renderer/core/dom/document.h"
#include "third_party/blink/renderer/core/dom/events/event.h"
#include "third_party/blink/renderer/core/html/media/html_media_element.h"
#include "third_party/blink/renderer/core/html/track/html_track_element.h"
#include "third_party/blink/renderer/core/html/track/loadable_text_track.h"
#include "third_party/blink/renderer/core/html/track/text_track.h"
#include "third_party/blink/renderer/core/html/track/text_track_cue.h"
#include "third_party/blink/renderer/core/html/track/text_track_cue_list.h"
#include "ui/accessibility/accessibility_features.h"
namespace blink {
namespace {
CueInterval CreateCueInterval(TextTrackCue* cue) { … }
base::TimeDelta CalculateEventTimeout(double event_time,
HTMLMediaElement const& media_element) { … }
}
CueTimeline::CueTimeline(HTMLMediaElement& media_element)
: … { … }
void CueTimeline::AddCues(TextTrack* track, const TextTrackCueList* cues) { … }
void CueTimeline::AddCue(TextTrack* track, TextTrackCue* cue) { … }
void CueTimeline::AddCueInternal(TextTrackCue* cue) { … }
void CueTimeline::RemoveCues(TextTrack*, const TextTrackCueList* cues) { … }
void CueTimeline::RemoveCue(TextTrack*, TextTrackCue* cue) { … }
void CueTimeline::RemoveCueInternal(TextTrackCue* cue) { … }
void CueTimeline::HideCues(TextTrack*, const TextTrackCueList* cues) { … }
static bool TrackIndexCompare(TextTrack* a, TextTrack* b) { … }
static bool EventTimeCueCompare(const std::pair<double, TextTrackCue*>& a,
const std::pair<double, TextTrackCue*>& b) { … }
static Event* CreateEventWithTarget(const AtomicString& event_name,
EventTarget* event_target) { … }
void CueTimeline::TimeMarchesOn() { … }
void CueTimeline::UpdateActiveCuePastAndFutureNodes() { … }
CueTimeline::IgnoreUpdateScope CueTimeline::BeginIgnoreUpdateScope() { … }
void CueTimeline::EndIgnoreUpdateScope(base::PassKey<IgnoreUpdateScope>,
IgnoreUpdateScope const& scope) { … }
void CueTimeline::InvokeTimeMarchesOn() { … }
void CueTimeline::OnPause() { … }
void CueTimeline::OnPlaybackRateUpdated() { … }
void CueTimeline::OnReadyStateReset() { … }
void CueTimeline::SetCueEventTimer() { … }
void CueTimeline::CancelCueEventTimer() { … }
void CueTimeline::CueEventTimerFired(TimerBase*) { … }
void CueTimeline::CueTimestampEventTimerFired(TimerBase*) { … }
void CueTimeline::SetCueTimestampEventTimer() { … }
void CueTimeline::CancelCueTimestampEventTimer() { … }
void CueTimeline::DidMoveToNewDocument(Document& ) { … }
void CueTimeline::Trace(Visitor* visitor) const { … }
}