Commit 53a29d41 authored by dino@apple.com's avatar dino@apple.com

[Mac] Captions menu should indicate language and type of track

https://bugs.webkit.org/show_bug.cgi?id=108882

Reviewed by Eric Carlson.

Source/WebCore:

On Mac, we want a specific format for menu items in a caption list. Since
other ports might want different formats, move the generation of the label
into CaptionsUserPreferences where it can be overridden.

This required CaptionsUserPreferences to become public on the PageGroup, so
it could be used when creating the menu. Also, since CaptionsUserPreferences
was hidden on Mountain Lion and below, be a little more specific about
which pieces can be seen on which builds.

Covered by existing media/video-controls-captions-trackmenu tests.

* English.lproj/Localizable.strings: Remove textTrackClosedCaptionsText.
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu): Build only
    one section and get the track's display name from the user preferences.
* page/CaptionUserPreferences.h:
(WebCore::CaptionUserPreferences::displayNameForTrack): Default implementation of
    virtual function that provides a label for a captions menu item.
* page/CaptionUserPreferencesMac.h: Add the new virtual function, and expose just
    a bit of this class outside 10.9 builds.
* page/CaptionUserPreferencesMac.mm:
(WebCore::CaptionUserPreferencesMac::CaptionUserPreferencesMac): Guard features for system version.
(WebCore::CaptionUserPreferencesMac::~CaptionUserPreferencesMac): Ditto.
(WebCore::CaptionUserPreferencesMac::displayNameForTrack): New OS X-specific method that
    returns a string for the menu label.
* page/PageGroup.cpp:
(WebCore::PageGroup::captionPreferences): Unguard for system version.
* page/PageGroup.h: Make captionPreferences public.
* platform/LocalizedStrings.cpp: Remove textTrackClosedCaptionsText - not needed any more.
* platform/LocalizedStrings.h: Remove textTrackClosedCaptionsText.

LayoutTests:

Now that the captions menu can be labelled in a platform-specific way, move
the results into the platform directory. At the moment, they are skipped
everywhere but Mac. Also update the tests to the new menu structure, which
only has a single list of entries.

* media/video-controls-captions-trackmenu-localized.html: Updated for new menu structure.
* media/video-controls-captions-trackmenu-expected.txt: Removed.
* media/video-controls-captions-trackmenu-localized-expected.txt: Removed.
* media/video-controls-captions-trackmenu-sorted-expected.txt: Removed.
* media/video-controls-captions-trackmenu-sorted.html: Updated for new menu structure.
* media/video-controls-captions-trackmenu.html: Updated for new menu structure.
* platform/mac/media/video-controls-captions-trackmenu-expected.txt: New platform specific results.
* platform/mac/media/video-controls-captions-trackmenu-localized-expected.txt: Ditto.
* platform/mac/media/video-controls-captions-trackmenu-sorted-expected.txt: Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@141864 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent 5acf1193
2013-02-04 Dean Jackson <dino@apple.com>
[Mac] Captions menu should indicate language and type of track
https://bugs.webkit.org/show_bug.cgi?id=108882
Reviewed by Eric Carlson.
Now that the captions menu can be labelled in a platform-specific way, move
the results into the platform directory. At the moment, they are skipped
everywhere but Mac. Also update the tests to the new menu structure, which
only has a single list of entries.
* media/video-controls-captions-trackmenu-localized.html: Updated for new menu structure.
* media/video-controls-captions-trackmenu-expected.txt: Removed.
* media/video-controls-captions-trackmenu-localized-expected.txt: Removed.
* media/video-controls-captions-trackmenu-sorted-expected.txt: Removed.
* media/video-controls-captions-trackmenu-sorted.html: Updated for new menu structure.
* media/video-controls-captions-trackmenu.html: Updated for new menu structure.
* platform/mac/media/video-controls-captions-trackmenu-expected.txt: New platform specific results.
* platform/mac/media/video-controls-captions-trackmenu-localized-expected.txt: Ditto.
* platform/mac/media/video-controls-captions-trackmenu-sorted-expected.txt: Ditto.
2013-02-04 Hajime Morrita <morrita@google.com>
[Chromium] Unreviewed, skipping heap-snapshot-with-detached-dom-tree.html
......@@ -8,7 +8,7 @@
<script src="trackmenu-test.js"></script>
<script>
var captionsSection;
var trackListSection;
var item;
if (window.testRunner)
......@@ -20,19 +20,14 @@
if (!trackListElement)
return;
// Track list should have two <section> elements.
var trackListSections = trackListElement.querySelectorAll("h3");
if (!trackListSections || trackListSections.length != 2) {
failTest("There should be two section elements in track list menu");
trackListSection = trackListElement.querySelector("h3");
if (!trackListSection) {
failTest("There should be a single section element in track list menu");
return;
}
captionsSection = trackListSections[0];
logConsole("First section should be labelled 'Closed Captions'");
testExpected("captionsSection.textContent", "Closed Captions");
captionsSection = trackListSections[1];
logConsole("Second section should be labelled 'Subtitles'");
testExpected("captionsSection.textContent", "Subtitles");
logConsole("Heading should be labelled 'Subtitles'");
testExpected("trackListSection.textContent", "Subtitles");
var captionsEntries = trackListElement.querySelectorAll("li");
if (!captionsEntries || captionsEntries.length <= 0) {
......
......@@ -15,33 +15,28 @@
var trackListElement = getTrackListElement();
if (!trackListElement)
return;
// Track list should have two <ul> elements.
var trackListSections = trackListElement.querySelectorAll("ul");
if (!trackListSections || trackListSections.length != 2) {
failTest("There should be two ul elements in track list menu");
var trackListSection = trackListElement.querySelector("ul");
if (!trackListSection) {
failTest("There should be a ul element in track list menu");
return;
}
for (var i = 0; i < trackListSections.length; i++) {
consoleWrite("<br>*** Test menu section " + i + ".");
var lastTrackLabel = null;
var trackListItems = trackListSections[i].querySelectorAll("li");
if (!trackListItems || trackListItems.length != 5) {
failTest("There should be five li elements in this section");
return;
}
for (var j = 0; j < trackListItems.length; j++) {
var item = trackListItems[j];
if (j == 0)
logResult(item.textContent == "Off", "First item should be labelled off");
else {
if (lastTrackLabel)
logResult(item.textContent > lastTrackLabel, lastTrackLabel + " comes before " + item.textContent);
else
logResult(true, item.textContent + " is the first real item in the list");
lastTrackLabel = item.textContent;
}
var lastTrackLabel = null;
var trackListItems = trackListSection.querySelectorAll("li");
if (!trackListItems || trackListItems.length != 7) {
failTest("There should be seven li elements in the menu");
return;
}
for (var j = 0; j < trackListItems.length; j++) {
var item = trackListItems[j];
if (j == 0)
logResult(item.textContent == "Off", "First item should be labelled off");
else {
if (lastTrackLabel)
logResult(item.textContent > lastTrackLabel, lastTrackLabel + " comes before " + item.textContent);
else
logResult(true, item.textContent + " is the first real item in the list");
lastTrackLabel = item.textContent;
}
consoleWrite("Menu section " + i + " was ok.<br>");
}
endTest();
}
......@@ -61,11 +56,9 @@
<track label="c" kind="captions" src="track/captions-webvtt/captions-fast.vtt" srclang="ja">
<track label="b" kind="captions" src="track/captions-webvtt/captions-fast.vtt" srclang="en-au">
<track label="a" kind="captions" src="track/captions-webvtt/captions-fast.vtt" srclang="en">
<track label="d" kind="captions" src="track/captions-webvtt/captions-fast.vtt" srclang="ja">
<track label="b" kind="subtitles" src="track/captions-webvtt/captions-fast.vtt" srclang="ja">
<track label="a" kind="subtitles" src="track/captions-webvtt/captions-fast.vtt" srclang="en-au">
<track label="c" kind="subtitles" src="track/captions-webvtt/captions-fast.vtt" srclang="en">
<track label="d" kind="subtitles" src="track/captions-webvtt/captions-fast.vtt" srclang="ja">
</video>
</body>
</html>
......
......@@ -22,7 +22,7 @@
var trackListElement = getTrackListElement();
if (!trackListElement)
return;
// Track list should have a <ul> with five <li> children (One of them is "Off").
// Track list should have a <ul> with <li> children (One of them is "Off").
var trackList = trackListElement.querySelector("ul");
if (!trackList) {
failTest("Could not find a child ul element in track list menu");
......@@ -70,9 +70,9 @@
{
testExpected("video.textTracks.length", 4);
consoleWrite("Track 0 should be showing");
testExpected("video.textTracks[0].mode", "disabled");
testExpected("video.textTracks[0].mode", "showing");
consoleWrite("Track 1 should be disabled");
testExpected("video.textTracks[1].mode", "showing");
testExpected("video.textTracks[1].mode", "disabled");
consoleWrite("Track 2 should be disabled");
testExpected("video.textTracks[2].mode", "disabled");
consoleWrite("Track 3 should be disabled");
......
......@@ -12,9 +12,9 @@ There should be 5 items in the menu.
EXPECTED (5 == '5') OK
EXPECTED (video.textTracks.length == '4') OK
Track 0 should be showing
EXPECTED (video.textTracks[0].mode == 'disabled') OK
EXPECTED (video.textTracks[0].mode == 'showing') OK
Track 1 should be disabled
EXPECTED (video.textTracks[1].mode == 'showing') OK
EXPECTED (video.textTracks[1].mode == 'disabled') OK
Track 2 should be disabled
EXPECTED (video.textTracks[2].mode == 'disabled') OK
Track 3 should be disabled
......
......@@ -4,8 +4,7 @@ EVENT(canplaythrough)
*** Set the user language preference.
RUN(internals.setUserPreferredLanguages(['en']))
EXPECTED (captionsSection.textContent == 'Closed Captions') OK
EXPECTED (captionsSection.textContent == 'Subtitles') OK
EXPECTED (trackListSection.textContent == 'Subtitles') OK
EXPECTED (item.textContent == 'Off') OK
EXPECTED (item.textContent == 'No label') OK
END OF TEST
......
......@@ -4,23 +4,12 @@ EVENT(canplaythrough)
*** Set the user language preference.
RUN(internals.setUserPreferredLanguages(['en']))
*** Test menu section 0.
First item should be labelled off OK
a is the first real item in the list OK
a comes before b OK
b comes before c OK
c comes before d OK
Menu section 0 was ok.
*** Test menu section 1.
First item should be labelled off OK
a is the first real item in the list OK
a comes before b OK
b comes before c OK
c comes before d OK
Menu section 1 was ok.
a English (Australia) is the first real item in the list OK
a English (Australia) comes before a English SDH OK
a English SDH comes before b English (Australia) SDH OK
b English (Australia) SDH comes before b Japanese OK
b Japanese comes before c English OK
c English comes before c Japanese SDH OK
END OF TEST
2013-02-04 Dean Jackson <dino@apple.com>
[Mac] Captions menu should indicate language and type of track
https://bugs.webkit.org/show_bug.cgi?id=108882
Reviewed by Eric Carlson.
On Mac, we want a specific format for menu items in a caption list. Since
other ports might want different formats, move the generation of the label
into CaptionsUserPreferences where it can be overridden.
This required CaptionsUserPreferences to become public on the PageGroup, so
it could be used when creating the menu. Also, since CaptionsUserPreferences
was hidden on Mountain Lion and below, be a little more specific about
which pieces can be seen on which builds.
Covered by exisiting media/video-controls-captions-trackmenu tests.
* English.lproj/Localizable.strings: Remove textTrackClosedCaptionsText.
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu): Build only
one section and get the track's display name from the user preferences.
* page/CaptionUserPreferences.h:
(WebCore::CaptionUserPreferences::displayNameForTrack): Default implementation of
virtual function that provides a label for a captions menu item.
* page/CaptionUserPreferencesMac.h: Add the new virtual function, and expose just
a bit of this class outside 10.9 builds.
* page/CaptionUserPreferencesMac.mm:
(WebCore::CaptionUserPreferencesMac::CaptionUserPreferencesMac): Guard features for system version.
(WebCore::CaptionUserPreferencesMac::~CaptionUserPreferencesMac): Ditto.
(WebCore::CaptionUserPreferencesMac::displayNameForTrack): New OS X-specific method that
returns a string for the menu label.
* page/PageGroup.cpp:
(WebCore::PageGroup::captionPreferences): Unguard for system version.
* page/PageGroup.h: Make captionPreferences public.
* platform/LocalizedStrings.cpp: Remove textTrackClosedCaptionsText - not needed any more.
* platform/LocalizedStrings.h: Remove textTrackClosedCaptionsText.
2013-02-04 Kentaro Hara <haraken@chromium.org>
[V8] Pass an Isolate to V8DOMConfiguration
B/* accessibility help text for media controller time value >= 1 day */
......
......@@ -32,6 +32,7 @@
#if ENABLE(VIDEO)
#include "MediaControlElements.h"
#include "CaptionUserPreferences.h"
#include "DOMTokenList.h"
#include "EventNames.h"
#include "EventTarget.h"
......@@ -871,19 +872,14 @@ void MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu()
return;
Document* doc = document();
CaptionUserPreferences* captionsUserPreferences = doc->page()->group().captionPreferences();
RefPtr<Element> captionsSection = doc->createElement(sectionTag, ASSERT_NO_EXCEPTION);
RefPtr<Element> captionsHeader = doc->createElement(h3Tag, ASSERT_NO_EXCEPTION);
captionsHeader->appendChild(doc->createTextNode(textTrackClosedCaptionsText()));
captionsHeader->appendChild(doc->createTextNode(textTrackSubtitlesText()));
captionsSection->appendChild(captionsHeader);
RefPtr<Element> captionsMenuList = doc->createElement(ulTag, ASSERT_NO_EXCEPTION);
RefPtr<Element> subtitlesSection = doc->createElement(sectionTag, ASSERT_NO_EXCEPTION);
RefPtr<Element> subtitlesHeader = doc->createElement(h3Tag, ASSERT_NO_EXCEPTION);
subtitlesHeader->appendChild(doc->createTextNode(textTrackSubtitlesText()));
subtitlesSection->appendChild(subtitlesHeader);
RefPtr<Element> subtitlesMenuList = doc->createElement(ulTag, ASSERT_NO_EXCEPTION);
RefPtr<Element> trackItem;
trackItem = doc->createElement(liTag, ASSERT_NO_EXCEPTION);
......@@ -892,15 +888,6 @@ void MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu()
captionsMenuList->appendChild(trackItem);
m_menuItems.append(trackItem);
trackItem = doc->createElement(liTag, ASSERT_NO_EXCEPTION);
trackItem->appendChild(doc->createTextNode(textTrackOffText()));
trackItem->setAttribute(trackIndexAttributeName(), textTracksOffAttrValue, ASSERT_NO_EXCEPTION);
subtitlesMenuList->appendChild(trackItem);
m_menuItems.append(trackItem);
bool hasCaptions = false;
bool hasSubtitles = false;
for (unsigned i = 0, length = trackList->length(); i < length; ++i) {
TextTrack* track = trackList->item(i);
trackItem = doc->createElement(liTag, ASSERT_NO_EXCEPTION);
......@@ -911,31 +898,17 @@ void MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu()
// should always be in sync.
trackItem->setAttribute(trackIndexAttributeName(), String::number(i), ASSERT_NO_EXCEPTION);
AtomicString labelText = track->label();
if (labelText.isNull() || labelText.isEmpty())
labelText = displayNameForLanguageLocale(track->language());
if (labelText.isNull() || labelText.isEmpty())
labelText = textTrackNoLabelText();
trackItem->appendChild(doc->createTextNode(labelText));
if (captionsUserPreferences)
trackItem->appendChild(doc->createTextNode(captionsUserPreferences->displayNameForTrack(track)));
else
trackItem->appendChild(doc->createTextNode(track->label()));
if (track->kind() == track->captionsKeyword()) {
hasCaptions = true;
insertTextTrackMenuItemIntoSortedContainer(trackItem, captionsMenuList);
}
if (track->kind() == track->subtitlesKeyword()) {
hasSubtitles = true;
insertTextTrackMenuItemIntoSortedContainer(trackItem, subtitlesMenuList);
}
insertTextTrackMenuItemIntoSortedContainer(trackItem, captionsMenuList);
m_menuItems.append(trackItem);
}
captionsSection->appendChild(captionsMenuList);
subtitlesSection->appendChild(subtitlesMenuList);
if (hasCaptions)
appendChild(captionsSection);
if (hasSubtitles)
appendChild(subtitlesSection);
appendChild(captionsSection);
updateDisplay();
#endif
......
......@@ -29,6 +29,8 @@
#if ENABLE(VIDEO_TRACK)
#include "Language.h"
#include "LocalizedStrings.h"
#include "TextTrack.h"
#include <wtf/PassOwnPtr.h>
#include <wtf/text/AtomicString.h>
......@@ -59,6 +61,15 @@ public:
virtual void setPreferredLanguage(String) const { }
virtual Vector<String> preferredLanguages() const { return platformUserPreferredLanguages(); }
virtual String displayNameForTrack(TextTrack* track) const
{
if (track->label().isEmpty() && track->language().isEmpty())
return textTrackNoLabelText();
if (!track->label().isEmpty())
return track->label();
return track->language();
}
PageGroup* pageGroup() { return m_pageGroup; }
protected:
......
......@@ -26,7 +26,7 @@
#ifndef CaptionUserPreferencesMac_h
#define CaptionUserPreferencesMac_h
#if ENABLE(VIDEO_TRACK) && MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
#if ENABLE(VIDEO_TRACK)
#include "CSSPropertyNames.h"
#include "CaptionUserPreferences.h"
......@@ -40,6 +40,7 @@ public:
static PassOwnPtr<CaptionUserPreferencesMac> create(PageGroup* group) { return adoptPtr(new CaptionUserPreferencesMac(group)); }
virtual ~CaptionUserPreferencesMac();
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
virtual bool userPrefersCaptions() const OVERRIDE;
virtual void setUserPrefersCaptions(bool) OVERRIDE;
virtual bool userHasCaptionPreferences() const OVERRIDE { return true; }
......@@ -52,10 +53,14 @@ public:
virtual Vector<String> preferredLanguages() const OVERRIDE;
void captionPreferencesChanged();
#endif
virtual String displayNameForTrack(TextTrack*) const OVERRIDE;
private:
CaptionUserPreferencesMac(PageGroup*);
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
String captionsWindowCSS() const;
String captionsBackgroundCSS() const;
String captionsTextColorCSS() const;
......@@ -71,6 +76,7 @@ private:
HashSet<CaptionPreferencesChangedListener*> m_captionPreferenceChangeListeners;
bool m_listeningForPreferenceChanges;
#endif
};
}
......
......@@ -25,7 +25,7 @@
#import "config.h"
#if ENABLE(VIDEO_TRACK) && MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
#if ENABLE(VIDEO_TRACK)
#import "CaptionUserPreferencesMac.h"
......@@ -34,7 +34,11 @@
#import "DOMWrapperWorld.h"
#import "FloatConversion.h"
#import "KURL.h"
#import "Language.h"
#import "LocalizedStrings.h"
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
#import "MediaAccessibility/MediaAccessibility.h"
#endif
#import "PageGroup.h"
#import "SoftLinking.h"
#import "TextTrackCue.h"
......@@ -42,6 +46,8 @@
#import <wtf/RetainPtr.h>
#import <wtf/text/StringBuilder.h>
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
SOFT_LINK_FRAMEWORK_OPTIONAL(MediaAccessibility)
SOFT_LINK(MediaAccessibility, MACaptionAppearanceGetShowCaptions, bool, (MACaptionAppearanceDomain domain), (domain))
......@@ -62,27 +68,36 @@ SOFT_LINK(MediaAccessibility, MACaptionAppearanceCopySelectedLanguages, CFArrayR
SOFT_LINK_POINTER(MediaAccessibility, kMAXCaptionAppearanceSettingsChangedNotification, CFStringRef)
#define kMAXCaptionAppearanceSettingsChangedNotification getkMAXCaptionAppearanceSettingsChangedNotification()
#endif
using namespace std;
namespace WebCore {
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
static void userCaptionPreferencesChangedNotificationCallback(CFNotificationCenterRef, void* observer, CFStringRef, const void *, CFDictionaryRef)
{
static_cast<CaptionUserPreferencesMac*>(observer)->captionPreferencesChanged();
}
#endif
CaptionUserPreferencesMac::CaptionUserPreferencesMac(PageGroup* group)
: CaptionUserPreferences(group)
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
, m_listeningForPreferenceChanges(false)
#endif
{
}
CaptionUserPreferencesMac::~CaptionUserPreferencesMac()
{
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
if (kMAXCaptionAppearanceSettingsChangedNotification)
CFNotificationCenterRemoveObserver(CFNotificationCenterGetLocalCenter(), this, kMAXCaptionAppearanceSettingsChangedNotification, NULL);
#endif
}
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
bool CaptionUserPreferencesMac::userPrefersCaptions() const
{
return MACaptionAppearanceGetShowCaptions(kMACaptionAppearanceDomainUser);
......@@ -397,6 +412,39 @@ Vector<String> CaptionUserPreferencesMac::preferredLanguages() const
return userPreferredLanguages;
}
#endif
String CaptionUserPreferencesMac::displayNameForTrack(TextTrack* track) const
{
String label = track->label();
String language = track->language();
String preferredLanguage = defaultLanguage();
StringBuilder displayName;
if (label.isEmpty() && language.isEmpty()) {
displayName.append(textTrackNoLabelText());
return displayName.toString();
}
if (!label.isEmpty())
displayName.append(label);
AtomicString localeDisplayName = displayNameForLanguageLocale(language);
if (!label.contains(localeDisplayName)) {
if (displayName.length() > 0)
displayName.append(" ");
displayName.append(localeDisplayName);
}
if (track->kind() == track->captionsKeyword()) {
if (track->isClosedCaptions())
displayName.append(" CC");
else
displayName.append(" SDH");
}
return displayName.toString();
}
}
......
......@@ -39,7 +39,7 @@
#include "StorageNamespace.h"
#if ENABLE(VIDEO_TRACK)
#if PLATFORM(MAC) && MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
#if PLATFORM(MAC)
#include "CaptionUserPreferencesMac.h"
#else
#include "CaptionUserPreferences.h"
......@@ -420,7 +420,7 @@ void PageGroup::invalidatedInjectedStyleSheetCacheInAllFrames()
CaptionUserPreferences* PageGroup::captionPreferences()
{
if (!m_captionPreferences)
#if PLATFORM(MAC) && MAC_OS_X_VERSION_MIN_REQUIRED >= 1090
#if PLATFORM(MAC)
m_captionPreferences = CaptionUserPreferencesMac::create(this);
#else
m_captionPreferences = CaptionUserPreferences::create(this);
......
......@@ -114,6 +114,7 @@ namespace WebCore {
float captionFontSizeScale(bool&);
void registerForCaptionPreferencesChangedCallbacks(CaptionPreferencesChangedListener*);
void unregisterForCaptionPreferencesChangedCallbacks(CaptionPreferencesChangedListener*);
CaptionUserPreferences* captionPreferences();
#endif
private:
......@@ -122,9 +123,6 @@ namespace WebCore {
void addVisitedLink(LinkHash stringHash);
void invalidatedInjectedStyleSheetCacheInAllFrames();
#if ENABLE(VIDEO_TRACK)
CaptionUserPreferences* captionPreferences();
#endif
String m_name;
HashSet<Page*> m_pages;
......
......@@ -1015,11 +1015,6 @@ String clickToExitFullScreenText()
}
#if ENABLE(VIDEO_TRACK)
String textTrackClosedCaptionsText()
{
return WEB_UI_STRING("Closed Captions", "Menu section heading for closed captions");
}
String textTrackSubtitlesText()
{
return WEB_UI_STRING("Subtitles", "Menu section heading for subtitles");
......
......@@ -265,7 +265,6 @@ namespace WebCore {
String clickToExitFullScreenText();
#if ENABLE(VIDEO_TRACK)
String textTrackClosedCaptionsText();
String textTrackSubtitlesText();
String textTrackOffText();
String textTrackNoLabelText();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment