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

Side by Side Diff: third_party/WebKit/Source/core/html/track/TextTrack.cpp

Issue 1984663002: Remove mode-transition in TextTrack::setKind (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 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) 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 124 matching lines...) Expand 10 before | Expand all | Expand 10 after
135 135
136 m_trackList = trackList; 136 m_trackList = trackList;
137 invalidateTrackIndex(); 137 invalidateTrackIndex();
138 } 138 }
139 139
140 bool TextTrack::isVisualKind() const 140 bool TextTrack::isVisualKind() const
141 { 141 {
142 return kind() == subtitlesKeyword() || kind() == captionsKeyword(); 142 return kind() == subtitlesKeyword() || kind() == captionsKeyword();
143 } 143 }
144 144
145 void TextTrack::setKind(const AtomicString& newKind)
146 {
147 AtomicString oldKind = kind();
148 TrackBase::setKind(newKind);
149
150 // If kind changes from visual to non-visual and mode is 'showing', then for ce mode to 'hidden'.
151 // FIXME: This is not per spec. crbug.com/460923
152 if (oldKind != kind() && mode() == showingKeyword() && !isVisualKind())
153 setMode(hiddenKeyword());
154 }
155
156 void TextTrack::setMode(const AtomicString& mode) 145 void TextTrack::setMode(const AtomicString& mode)
157 { 146 {
158 ASSERT(mode == disabledKeyword() || mode == hiddenKeyword() || mode == showi ngKeyword()); 147 ASSERT(mode == disabledKeyword() || mode == hiddenKeyword() || mode == showi ngKeyword());
159 148
160 // On setting, if the new value isn't equal to what the attribute would curr ently 149 // On setting, if the new value isn't equal to what the attribute would curr ently
161 // return, the new value must be processed as follows ... 150 // return, the new value must be processed as follows ...
162 if (m_mode == mode) 151 if (m_mode == mode)
163 return; 152 return;
164 153
165 if (m_cues && cueTimeline()) { 154 if (m_cues && cueTimeline()) {
(...skipping 313 matching lines...) Expand 10 before | Expand all | Expand 10 after
479 visitor->trace(m_trackList); 468 visitor->trace(m_trackList);
480 TrackBase::trace(visitor); 469 TrackBase::trace(visitor);
481 EventTargetWithInlineData::trace(visitor); 470 EventTargetWithInlineData::trace(visitor);
482 } 471 }
483 472
484 DEFINE_TRACE_WRAPPERS(TextTrack) 473 DEFINE_TRACE_WRAPPERS(TextTrack)
485 { 474 {
486 visitor->traceWrappers(m_cues); 475 visitor->traceWrappers(m_cues);
487 } 476 }
488 } // namespace blink 477 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/html/track/TextTrack.h ('k') | third_party/WebKit/Source/core/html/track/TrackBase.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698