Chromium Code Reviews| 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 1133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1144 // The track readiness state might have changed as a result of the user | 1144 // The track readiness state might have changed as a result of the user |
| 1145 // clicking the captions button. In this case, a check whether all the | 1145 // clicking the captions button. In this case, a check whether all the |
| 1146 // resources have failed loading should be done in order to hide the CC button. | 1146 // resources have failed loading should be done in order to hide the CC button. |
| 1147 if (hasMediaControls() && track->readinessState() == TextTrack::FailedTo Load) | 1147 if (hasMediaControls() && track->readinessState() == TextTrack::FailedTo Load) |
| 1148 mediaControls()->refreshClosedCaptionsButtonVisibility(); | 1148 mediaControls()->refreshClosedCaptionsButtonVisibility(); |
| 1149 } | 1149 } |
| 1150 } | 1150 } |
| 1151 | 1151 |
| 1152 void HTMLMediaElement::textTrackModeChanged(TextTrack* track) | 1152 void HTMLMediaElement::textTrackModeChanged(TextTrack* track) |
| 1153 { | 1153 { |
| 1154 if (track->trackType() == TextTrack::TrackElement) { | 1154 // Mark this track as "configured" so configureTextTracks won't change the m ode again. |
| 1155 // 4.8.10.12.3 Sourcing out-of-band text tracks | 1155 if (track->trackType() == TextTrack::TrackElement) |
| 1156 // ... when a text track corresponding to a track element is created wit h text track | 1156 track->setHasBeenConfigured(true); |
| 1157 // mode set to disabled and subsequently changes its text track mode to hidden, showing, | |
| 1158 // or showing by default for the first time, the user agent must immedia tely and synchronously | |
| 1159 // run the following algorithm ... | |
| 1160 | |
| 1161 for (HTMLTrackElement* trackElement = Traversal<HTMLTrackElement>::first Child(*this); trackElement; trackElement = Traversal<HTMLTrackElement>::nextSibl ing(*trackElement)) { | |
| 1162 if (trackElement->track() != track) | |
| 1163 continue; | |
| 1164 | |
| 1165 // Mark this track as "configured" so configureTextTracks won't chan ge the mode again. | |
| 1166 track->setHasBeenConfigured(true); | |
| 1167 if (track->mode() != TextTrack::disabledKeyword()) { | |
| 1168 if (trackElement->readyState() == HTMLTrackElement::LOADED) | |
| 1169 cueTimeline().addCues(track, track->cues()); | |
| 1170 | |
| 1171 // If this is the first added track, create the list of text tra cks. | |
|
philipj_slow
2015/02/25 15:52:14
Was this just dead code?
fs
2015/02/25 16:26:11
Yes. (This method was only called from within Text
| |
| 1172 if (!m_textTracks) | |
| 1173 m_textTracks = TextTrackList::create(this); | |
| 1174 } | |
| 1175 break; | |
| 1176 } | |
| 1177 } else if (track->trackType() == TextTrack::AddTrack && track->mode() != Tex tTrack::disabledKeyword()) { | |
| 1178 cueTimeline().addCues(track, track->cues()); | |
| 1179 } | |
| 1180 | 1157 |
| 1181 configureTextTrackDisplay(AssumeVisibleChange); | 1158 configureTextTrackDisplay(AssumeVisibleChange); |
| 1182 | 1159 |
| 1183 ASSERT(textTracks()->contains(track)); | 1160 ASSERT(textTracks()->contains(track)); |
| 1184 textTracks()->scheduleChangeEvent(); | 1161 textTracks()->scheduleChangeEvent(); |
| 1185 } | 1162 } |
| 1186 | 1163 |
| 1187 void HTMLMediaElement::textTrackKindChanged(TextTrack* track) | 1164 void HTMLMediaElement::textTrackKindChanged(TextTrack* track) |
| 1188 { | 1165 { |
| 1189 if (track->kind() != TextTrack::captionsKeyword() && track->kind() != TextTr ack::subtitlesKeyword() && track->mode() == TextTrack::showingKeyword()) | 1166 if (track->kind() != TextTrack::captionsKeyword() && track->kind() != TextTr ack::subtitlesKeyword() && track->mode() == TextTrack::showingKeyword()) |
| (...skipping 2442 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 3632 | 3609 |
| 3633 #if ENABLE(WEB_AUDIO) | 3610 #if ENABLE(WEB_AUDIO) |
| 3634 void HTMLMediaElement::clearWeakMembers(Visitor* visitor) | 3611 void HTMLMediaElement::clearWeakMembers(Visitor* visitor) |
| 3635 { | 3612 { |
| 3636 if (!visitor->isAlive(m_audioSourceNode) && audioSourceProvider()) | 3613 if (!visitor->isAlive(m_audioSourceNode) && audioSourceProvider()) |
| 3637 audioSourceProvider()->setClient(nullptr); | 3614 audioSourceProvider()->setClient(nullptr); |
| 3638 } | 3615 } |
| 3639 #endif | 3616 #endif |
| 3640 | 3617 |
| 3641 } | 3618 } |
| OLD | NEW |