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

Unified Diff: third_party/WebKit/Source/core/html/shadow/MediaControlElements.cpp

Issue 2456993003: Improve caption button behavior for video player. (Closed)
Patch Set: Created 4 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/html/shadow/MediaControlElements.cpp
diff --git a/third_party/WebKit/Source/core/html/shadow/MediaControlElements.cpp b/third_party/WebKit/Source/core/html/shadow/MediaControlElements.cpp
index 022370bfdd79ba204e54fd57a969e6312dfd4761..19c55590ee818d9064eb5529cd074d1676df96a1 100644
--- a/third_party/WebKit/Source/core/html/shadow/MediaControlElements.cpp
+++ b/third_party/WebKit/Source/core/html/shadow/MediaControlElements.cpp
@@ -471,6 +471,16 @@ void MediaControlTextTrackListElement::defaultEventHandler(Event* event) {
}
void MediaControlTextTrackListElement::setVisible(bool visible) {
+ if (mediaElement().textTracks()->length() == 1) {
+ if (mediaElement().textTracks()->hasShowingTracks()) {
+ TextTrack* track = mediaElement().textTracks()->anonymousIndexedGetter(0);
+ track->setMode(TextTrack::hiddenKeyword());
+ } else {
+ showTextTrackAtIndex(0);
+ }
+ return;
+ }
mlamouri (slow - plz ping) 2016/10/28 13:02:37 Maybe this logic could be moved to the ClosedCapti
Finnur 2016/10/28 14:12:22 Yeah, I like that idea. Done.
+
if (visible) {
setIsWanted(true);
refreshTextTrackListMenu();
@@ -499,15 +509,21 @@ void MediaControlTextTrackListElement::disableShowingTextTracks() {
}
String MediaControlTextTrackListElement::getTextTrackLabel(TextTrack* track) {
- if (!track)
+ if (!track) {
return mediaElement().locale().queryString(
WebLocalizedString::TextTracksOff);
+ }
String trackLabel = track->label();
if (trackLabel.isEmpty())
+ trackLabel = track->language();
+
+ if (trackLabel.isEmpty()) {
trackLabel = String(mediaElement().locale().queryString(
- WebLocalizedString::TextTracksNoLabel));
+ WebLocalizedString::TextTracksNoLabel,
+ String::number(track->trackIndex() + 1)));
+ }
return trackLabel;
}
« content/app/strings/content_strings.grd ('K') | « content/app/strings/content_strings.grd ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698