Title: [151697] trunk
Revision
151697
Author
[email protected]
Date
2013-06-18 14:29:12 -0700 (Tue, 18 Jun 2013)

Log Message

Not all subtitle tracks are SDH
https://bugs.webkit.org/show_bug.cgi?id=117738

Reviewed by Dean Jackson.

Source/WebCore:

No new tests, existing tests updated.

* html/track/InbandTextTrack.cpp:
(WebCore::InbandTextTrack::isSDH): New.

* html/track/InbandTextTrack.h: Add isSDH override.
* html/track/TextTrack.h:

* page/CaptionUserPreferencesMac.mm:
(WebCore::trackDisplayName): Only add "SDH" label if a track claims to be SDH.

* platform/graphics/InbandTextTrackPrivate.h:
(WebCore::InbandTextTrackPrivate::isSDH): New.

* platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h:
* platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm:
(WebCore::InbandTextTrackPrivateAVFObjC::isSDH): Return true if track has both "transcribes
    spoken dialog for accessibility" and "describes music and sound for accessibility"
    characteristics.

LayoutTests:

* media/video-controls-captions-trackmenu-localized.html:
* media/video-controls-captions-trackmenu-sorted.html:
* platform/mac/media/video-controls-captions-trackmenu-localized-expected.txt:
* platform/mac/media/video-controls-captions-trackmenu-sorted-expected.txt:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (151696 => 151697)


--- trunk/LayoutTests/ChangeLog	2013-06-18 21:25:53 UTC (rev 151696)
+++ trunk/LayoutTests/ChangeLog	2013-06-18 21:29:12 UTC (rev 151697)
@@ -1,3 +1,15 @@
+2013-06-18  Eric Carlson  <[email protected]>
+
+        Not all subtitle tracks are SDH
+        https://bugs.webkit.org/show_bug.cgi?id=117738
+
+        Reviewed by Dean Jackson.
+
+        * media/video-controls-captions-trackmenu-localized.html:
+        * media/video-controls-captions-trackmenu-sorted.html:
+        * platform/mac/media/video-controls-captions-trackmenu-localized-expected.txt:
+        * platform/mac/media/video-controls-captions-trackmenu-sorted-expected.txt:
+
 2013-06-18  Dean Jackson  <[email protected]>
 
         Synthesized vertical italics on rotated glyphs are transformed incorrectly

Modified: trunk/LayoutTests/media/video-controls-captions-trackmenu-localized.html (151696 => 151697)


--- trunk/LayoutTests/media/video-controls-captions-trackmenu-localized.html	2013-06-18 21:25:53 UTC (rev 151696)
+++ trunk/LayoutTests/media/video-controls-captions-trackmenu-localized.html	2013-06-18 21:29:12 UTC (rev 151697)
@@ -53,8 +53,8 @@
             testExpected("item.textContent", "Laugh Track (English-United States)");
 
             item = captionsEntries[4];
-            consoleWrite("<br>Fifth item in captions menu should be labelled 'Unknown SDH'");
-            testExpected("item.textContent", "Unknown SDH");
+            consoleWrite("<br>Fifth item in captions menu should be labelled 'Unknown'");
+            testExpected("item.textContent", "Unknown");
 
             endTest();
         }

Modified: trunk/LayoutTests/media/video-controls-captions-trackmenu-sorted.html (151696 => 151697)


--- trunk/LayoutTests/media/video-controls-captions-trackmenu-sorted.html	2013-06-18 21:25:53 UTC (rev 151696)
+++ trunk/LayoutTests/media/video-controls-captions-trackmenu-sorted.html	2013-06-18 21:29:12 UTC (rev 151697)
@@ -42,11 +42,11 @@
                     trackMenuItems = textTrackMenuItems();
                     testExpected("trackMenuItems[0].textContent", "Off");
                     testExpected("trackMenuItems[1].textContent", "Auto (Recommended)");
-                    testExpected("trackMenuItems[2].textContent", "u (English) SDH");
-                    testExpected("trackMenuItems[3].textContent", "y (English-Australia) SDH");
+                    testExpected("trackMenuItems[2].textContent", "u (English)");
+                    testExpected("trackMenuItems[3].textContent", "y (English-Australia)");
                     testExpected("trackMenuItems[4].textContent", "v (English)");
                     testExpected("trackMenuItems[5].textContent", "x (English-Australia)");
-                    testExpected("trackMenuItems[6].textContent", "w (Japanese) SDH");
+                    testExpected("trackMenuItems[6].textContent", "w (Japanese)");
                     testExpected("trackMenuItems[7].textContent", "z (Japanese)");
                     testExpected("video.textTracks.length", 6);
                     testExpected("trackMenuItems.length", 8);

Modified: trunk/LayoutTests/platform/mac/media/video-controls-captions-trackmenu-localized-expected.txt (151696 => 151697)


--- trunk/LayoutTests/platform/mac/media/video-controls-captions-trackmenu-localized-expected.txt	2013-06-18 21:25:53 UTC (rev 151696)
+++ trunk/LayoutTests/platform/mac/media/video-controls-captions-trackmenu-localized-expected.txt	2013-06-18 21:29:12 UTC (rev 151697)
@@ -19,7 +19,7 @@
 Fourth item in captions menu should be labelled 'Laugh Track (English-United States)'
 EXPECTED (item.textContent == 'Laugh Track (English-United States)') OK
 
-Fifth item in captions menu should be labelled 'Unknown SDH'
-EXPECTED (item.textContent == 'Unknown SDH') OK
+Fifth item in captions menu should be labelled 'Unknown'
+EXPECTED (item.textContent == 'Unknown') OK
 END OF TEST
 

Modified: trunk/LayoutTests/platform/mac/media/video-controls-captions-trackmenu-sorted-expected.txt (151696 => 151697)


--- trunk/LayoutTests/platform/mac/media/video-controls-captions-trackmenu-sorted-expected.txt	2013-06-18 21:25:53 UTC (rev 151696)
+++ trunk/LayoutTests/platform/mac/media/video-controls-captions-trackmenu-sorted-expected.txt	2013-06-18 21:29:12 UTC (rev 151697)
@@ -9,11 +9,11 @@
 RUN(internals.settings.setShouldDisplayTrackKind('Captions', true))
 EXPECTED (trackMenuItems[0].textContent == 'Off') OK
 EXPECTED (trackMenuItems[1].textContent == 'Auto (Recommended)') OK
-EXPECTED (trackMenuItems[2].textContent == 'u (English) SDH') OK
-EXPECTED (trackMenuItems[3].textContent == 'y (English-Australia) SDH') OK
+EXPECTED (trackMenuItems[2].textContent == 'u (English)') OK
+EXPECTED (trackMenuItems[3].textContent == 'y (English-Australia)') OK
 EXPECTED (trackMenuItems[4].textContent == 'v (English)') OK
 EXPECTED (trackMenuItems[5].textContent == 'x (English-Australia)') OK
-EXPECTED (trackMenuItems[6].textContent == 'w (Japanese) SDH') OK
+EXPECTED (trackMenuItems[6].textContent == 'w (Japanese)') OK
 EXPECTED (trackMenuItems[7].textContent == 'z (Japanese)') OK
 EXPECTED (video.textTracks.length == '6') OK
 EXPECTED (trackMenuItems.length == '8') OK
@@ -24,9 +24,9 @@
 RUN(internals.settings.setShouldDisplayTrackKind('Subtitles', true))
 EXPECTED (trackMenuItems[0].textContent == 'Off') OK
 EXPECTED (trackMenuItems[1].textContent == 'Auto (Recommended)') OK
-EXPECTED (trackMenuItems[2].textContent == 'z (Japanese)'), OBSERVED 'w (Japanese) SDH' FAIL
+EXPECTED (trackMenuItems[2].textContent == 'z (Japanese)'), OBSERVED 'w (Japanese)' FAIL
 EXPECTED (trackMenuItems[3].textContent == 'v (English)'), OBSERVED 'z (Japanese)' FAIL
-EXPECTED (trackMenuItems[4].textContent == 'x (English-Australia)'), OBSERVED 'u (English) SDH' FAIL
+EXPECTED (trackMenuItems[4].textContent == 'x (English-Australia)'), OBSERVED 'u (English)' FAIL
 EXPECTED (video.textTracks.length == '6') OK
 EXPECTED (trackMenuItems.length == '5'), OBSERVED '8' FAIL
 

Modified: trunk/Source/WebCore/ChangeLog (151696 => 151697)


--- trunk/Source/WebCore/ChangeLog	2013-06-18 21:25:53 UTC (rev 151696)
+++ trunk/Source/WebCore/ChangeLog	2013-06-18 21:29:12 UTC (rev 151697)
@@ -1,3 +1,30 @@
+2013-06-18  Eric Carlson  <[email protected]>
+
+        Not all subtitle tracks are SDH
+        https://bugs.webkit.org/show_bug.cgi?id=117738
+
+        Reviewed by Dean Jackson.
+
+        No new tests, existing tests updated.
+
+        * html/track/InbandTextTrack.cpp:
+        (WebCore::InbandTextTrack::isSDH): New.
+
+        * html/track/InbandTextTrack.h: Add isSDH override.
+        * html/track/TextTrack.h:
+
+        * page/CaptionUserPreferencesMac.mm:
+        (WebCore::trackDisplayName): Only add "SDH" label if a track claims to be SDH.
+
+        * platform/graphics/InbandTextTrackPrivate.h:
+        (WebCore::InbandTextTrackPrivate::isSDH): New.
+
+        * platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h:
+        * platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm:
+        (WebCore::InbandTextTrackPrivateAVFObjC::isSDH): Return true if track has both "transcribes
+            spoken dialog for accessibility" and "describes music and sound for accessibility" 
+            characteristics.
+
 2013-06-18  Ryosuke Niwa  <[email protected]>
 
         Simplify FormKeyGenerator::willDeleteForm

Modified: trunk/Source/WebCore/html/track/InbandTextTrack.cpp (151696 => 151697)


--- trunk/Source/WebCore/html/track/InbandTextTrack.cpp	2013-06-18 21:25:53 UTC (rev 151696)
+++ trunk/Source/WebCore/html/track/InbandTextTrack.cpp	2013-06-18 21:29:12 UTC (rev 151697)
@@ -148,6 +148,14 @@
     return m_private->isClosedCaptions();
 }
 
+bool InbandTextTrack::isSDH() const
+{
+    if (!m_private)
+        return false;
+    
+    return m_private->isSDH();
+}
+
 bool InbandTextTrack::containsOnlyForcedSubtitles() const
 {
     if (!m_private)

Modified: trunk/Source/WebCore/html/track/InbandTextTrack.h (151696 => 151697)


--- trunk/Source/WebCore/html/track/InbandTextTrack.h	2013-06-18 21:25:53 UTC (rev 151696)
+++ trunk/Source/WebCore/html/track/InbandTextTrack.h	2013-06-18 21:29:12 UTC (rev 151697)
@@ -67,6 +67,7 @@
     virtual ~InbandTextTrack();
 
     virtual bool isClosedCaptions() const OVERRIDE;
+    virtual bool isSDH() const OVERRIDE;
     virtual bool containsOnlyForcedSubtitles() const OVERRIDE;
     virtual bool isMainProgramContent() const OVERRIDE;
     virtual bool isEasyToRead() const OVERRIDE;

Modified: trunk/Source/WebCore/html/track/TextTrack.h (151696 => 151697)


--- trunk/Source/WebCore/html/track/TextTrack.h	2013-06-18 21:25:53 UTC (rev 151696)
+++ trunk/Source/WebCore/html/track/TextTrack.h	2013-06-18 21:29:12 UTC (rev 151697)
@@ -127,7 +127,7 @@
     TextTrackType trackType() const { return m_trackType; }
 
     virtual bool isClosedCaptions() const { return false; }
-
+    virtual bool isSDH() const { return false; }
     virtual bool containsOnlyForcedSubtitles() const { return false; }
     virtual bool isMainProgramContent() const;
     virtual bool isEasyToRead() const { return false; }

Modified: trunk/Source/WebCore/page/CaptionUserPreferencesMac.mm (151696 => 151697)


--- trunk/Source/WebCore/page/CaptionUserPreferencesMac.mm	2013-06-18 21:25:53 UTC (rev 151696)
+++ trunk/Source/WebCore/page/CaptionUserPreferencesMac.mm	2013-06-18 21:29:12 UTC (rev 151697)
@@ -587,13 +587,13 @@
     if (track->isEasyToRead())
         return easyReaderTrackMenuItemText(displayName.toString());
     
-    if (track->kind() != track->captionsKeyword())
-        return displayName.toString();
-    
     if (track->isClosedCaptions())
         return closedCaptionTrackMenuItemText(displayName.toString());
-    
-    return sdhTrackMenuItemText(displayName.toString());
+
+    if (track->isSDH())
+        return sdhTrackMenuItemText(displayName.toString());
+
+    return displayName.toString();
 }
 
 String CaptionUserPreferencesMac::displayNameForTrack(TextTrack* track) const

Modified: trunk/Source/WebCore/platform/graphics/InbandTextTrackPrivate.h (151696 => 151697)


--- trunk/Source/WebCore/platform/graphics/InbandTextTrackPrivate.h	2013-06-18 21:25:53 UTC (rev 151696)
+++ trunk/Source/WebCore/platform/graphics/InbandTextTrackPrivate.h	2013-06-18 21:29:12 UTC (rev 151697)
@@ -67,6 +67,7 @@
     };
     virtual Kind kind() const { return Subtitles; }
     virtual bool isClosedCaptions() const { return false; }
+    virtual bool isSDH() const { return false; }
     virtual bool containsOnlyForcedSubtitles() const { return false; }
     virtual bool isMainProgramContent() const { return true; }
     virtual bool isEasyToRead() const { return false; }

Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h (151696 => 151697)


--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h	2013-06-18 21:25:53 UTC (rev 151696)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h	2013-06-18 21:29:12 UTC (rev 151697)
@@ -46,6 +46,7 @@
 
     virtual InbandTextTrackPrivate::Kind kind() const OVERRIDE;
     virtual bool isClosedCaptions() const OVERRIDE;
+    virtual bool isSDH() const OVERRIDE;
     virtual bool containsOnlyForcedSubtitles() const OVERRIDE;
     virtual bool isMainProgramContent() const OVERRIDE;
     virtual bool isEasyToRead() const OVERRIDE;

Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm (151696 => 151697)


--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm	2013-06-18 21:25:53 UTC (rev 151696)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm	2013-06-18 21:29:12 UTC (rev 151697)
@@ -126,6 +126,20 @@
     return [[m_mediaSelectionOption mediaType] isEqualToString:AVMediaTypeClosedCaption];
 }
 
+bool InbandTextTrackPrivateAVFObjC::isSDH() const
+{
+    if (!m_mediaSelectionOption)
+        return false;
+    
+    if (![[m_mediaSelectionOption mediaType] isEqualToString:AVMediaTypeSubtitle])
+        return false;
+
+    if ([m_mediaSelectionOption hasMediaCharacteristic:AVMediaCharacteristicTranscribesSpokenDialogForAccessibility] && [m_mediaSelectionOption hasMediaCharacteristic:AVMediaCharacteristicDescribesMusicAndSoundForAccessibility])
+        return true;
+
+    return false;
+}
+    
 bool InbandTextTrackPrivateAVFObjC::containsOnlyForcedSubtitles() const
 {
     if (!m_mediaSelectionOption)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to