Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
| 3 * Copyright (C) 2011, 2012, 2013 Apple Inc. All rights reserved. | 3 * Copyright (C) 2011, 2012, 2013 Apple Inc. All rights reserved. |
| 4 * | 4 * |
| 5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
| 6 * modification, are permitted provided that the following conditions are | 6 * modification, are permitted provided that the following conditions are |
| 7 * met: | 7 * met: |
| 8 * | 8 * |
| 9 * * Redistributions of source code must retain the above copyright | 9 * * Redistributions of source code must retain the above copyright |
| 10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
| (...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 149 | 149 |
| 150 m_trackList = trackList; | 150 m_trackList = trackList; |
| 151 invalidateTrackIndex(); | 151 invalidateTrackIndex(); |
| 152 } | 152 } |
| 153 | 153 |
| 154 void TextTrack::setKind(const AtomicString& newKind) | 154 void TextTrack::setKind(const AtomicString& newKind) |
| 155 { | 155 { |
| 156 AtomicString oldKind = kind(); | 156 AtomicString oldKind = kind(); |
| 157 TrackBase::setKind(newKind); | 157 TrackBase::setKind(newKind); |
| 158 | 158 |
| 159 if (mediaElement() && oldKind != kind()) | 159 // If kind changes from visual to non-visual and mode is 'showing', then for ce mode to 'hidden'. |
|
philipj_slow
2015/02/23 13:41:46
Does this correspond to anything in the HTML spec?
fs
2015/02/23 14:00:02
AFAIK, no. The spec says "The kind of track can ch
| |
| 160 mediaElement()->textTrackKindChanged(this); | 160 if (oldKind != kind() && mode() == showingKeyword()) { |
| 161 if (kind() != captionsKeyword() && kind() != subtitlesKeyword()) | |
| 162 setMode(hiddenKeyword()); | |
| 163 } | |
| 161 } | 164 } |
| 162 | 165 |
| 163 void TextTrack::setMode(const AtomicString& mode) | 166 void TextTrack::setMode(const AtomicString& mode) |
| 164 { | 167 { |
| 165 ASSERT(mode == disabledKeyword() || mode == hiddenKeyword() || mode == showi ngKeyword()); | 168 ASSERT(mode == disabledKeyword() || mode == hiddenKeyword() || mode == showi ngKeyword()); |
| 166 | 169 |
| 167 // On setting, if the new value isn't equal to what the attribute would curr ently | 170 // On setting, if the new value isn't equal to what the attribute would curr ently |
| 168 // return, the new value must be processed as follows ... | 171 // return, the new value must be processed as follows ... |
| 169 if (m_mode == mode) | 172 if (m_mode == mode) |
| 170 return; | 173 return; |
| (...skipping 278 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 449 DEFINE_TRACE(TextTrack) | 452 DEFINE_TRACE(TextTrack) |
| 450 { | 453 { |
| 451 visitor->trace(m_cues); | 454 visitor->trace(m_cues); |
| 452 visitor->trace(m_regions); | 455 visitor->trace(m_regions); |
| 453 visitor->trace(m_trackList); | 456 visitor->trace(m_trackList); |
| 454 TrackBase::trace(visitor); | 457 TrackBase::trace(visitor); |
| 455 EventTargetWithInlineData::trace(visitor); | 458 EventTargetWithInlineData::trace(visitor); |
| 456 } | 459 } |
| 457 | 460 |
| 458 } // namespace blink | 461 } // namespace blink |
| OLD | NEW |