Changeset 196135 in webkit


Ignore:
Timestamp:
Feb 4, 2016 11:27:11 AM (8 years ago)
Author:
eric.carlson@apple.com
Message:

PageGroup::captionPreferences should return a reference
https://bugs.webkit.org/show_bug.cgi?id=153877
<rdar://problem/24506917>

Reviewed by Jer Noble.

No new tests, no functional change.

  • Modules/mediacontrols/MediaControlsHost.cpp:

(WebCore::MediaControlsHost::sortedTrackListForMenu):
(WebCore::MediaControlsHost::displayNameForTrack):
(WebCore::MediaControlsHost::captionMenuOffItem):
(WebCore::MediaControlsHost::captionDisplayMode):

  • dom/Document.cpp:

(WebCore::Document::registerForCaptionPreferencesChangedCallbacks):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::addTextTrack):
(WebCore::HTMLMediaElement::configureTextTrackGroup):
(WebCore::HTMLMediaElement::setSelectedTextTrack):
(WebCore::HTMLMediaElement::configureTextTracks):
(WebCore::HTMLMediaElement::captionPreferencesChanged):
(WebCore::HTMLMediaElement::mediaPlayerPreferredAudioCharacteristics):

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay):
(WebCore::MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu):
(WebCore::MediaControlTextTrackContainerElement::updateActiveCuesFontSize):

  • page/PageGroup.cpp:

(WebCore::PageGroup::captionPreferencesChanged):
(WebCore::PageGroup::captionPreferences):

  • page/PageGroup.h:
  • platform/cocoa/WebVideoFullscreenModelVideoElement.mm:

(WebVideoFullscreenModelVideoElement::updateLegibleOptions):

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::setShouldDisplayTrackKind):
(WebCore::InternalSettings::shouldDisplayTrackKind):

  • testing/Internals.cpp:

(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::Internals):
(WebCore::Internals::userPreferredAudioCharacteristics):
(WebCore::Internals::setUserPreferredAudioCharacteristic):
(WebCore::Internals::captionsStyleSheetOverride):
(WebCore::Internals::setCaptionsStyleSheetOverride):
(WebCore::Internals::setPrimaryAudioTrackLanguageOverride):
(WebCore::Internals::setCaptionDisplayMode):

Location:
trunk/Source/WebCore
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r196134 r196135  
     12016-02-04  Eric Carlson  <eric.carlson@apple.com>
     2
     3        PageGroup::captionPreferences should return a reference
     4        https://bugs.webkit.org/show_bug.cgi?id=153877
     5        <rdar://problem/24506917>
     6
     7        Reviewed by Jer Noble.
     8
     9        No new tests, no functional change.
     10
     11        * Modules/mediacontrols/MediaControlsHost.cpp:
     12        (WebCore::MediaControlsHost::sortedTrackListForMenu):
     13        (WebCore::MediaControlsHost::displayNameForTrack):
     14        (WebCore::MediaControlsHost::captionMenuOffItem):
     15        (WebCore::MediaControlsHost::captionDisplayMode):
     16        * dom/Document.cpp:
     17        (WebCore::Document::registerForCaptionPreferencesChangedCallbacks):
     18        * html/HTMLMediaElement.cpp:
     19        (WebCore::HTMLMediaElement::HTMLMediaElement):
     20        (WebCore::HTMLMediaElement::addTextTrack):
     21        (WebCore::HTMLMediaElement::configureTextTrackGroup):
     22        (WebCore::HTMLMediaElement::setSelectedTextTrack):
     23        (WebCore::HTMLMediaElement::configureTextTracks):
     24        (WebCore::HTMLMediaElement::captionPreferencesChanged):
     25        (WebCore::HTMLMediaElement::mediaPlayerPreferredAudioCharacteristics):
     26        * html/shadow/MediaControlElements.cpp:
     27        (WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay):
     28        (WebCore::MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu):
     29        (WebCore::MediaControlTextTrackContainerElement::updateActiveCuesFontSize):
     30        * page/PageGroup.cpp:
     31        (WebCore::PageGroup::captionPreferencesChanged):
     32        (WebCore::PageGroup::captionPreferences):
     33        * page/PageGroup.h:
     34        * platform/cocoa/WebVideoFullscreenModelVideoElement.mm:
     35        (WebVideoFullscreenModelVideoElement::updateLegibleOptions):
     36        * testing/InternalSettings.cpp:
     37        (WebCore::InternalSettings::setShouldDisplayTrackKind):
     38        (WebCore::InternalSettings::shouldDisplayTrackKind):
     39        * testing/Internals.cpp:
     40        (WebCore::Internals::resetToConsistentState):
     41        (WebCore::Internals::Internals):
     42        (WebCore::Internals::userPreferredAudioCharacteristics):
     43        (WebCore::Internals::setUserPreferredAudioCharacteristic):
     44        (WebCore::Internals::captionsStyleSheetOverride):
     45        (WebCore::Internals::setCaptionsStyleSheetOverride):
     46        (WebCore::Internals::setPrimaryAudioTrackLanguageOverride):
     47        (WebCore::Internals::setCaptionDisplayMode):
     48
    1492016-02-04  Konstantin Tokarev  <annulen@yandex.ru>
    250
  • trunk/Source/WebCore/Modules/mediacontrols/MediaControlsHost.cpp

    r196010 r196135  
    9393        return Vector<RefPtr<TextTrack>>();
    9494
    95     CaptionUserPreferences* captionPreferences = page->group().captionPreferences();
    96     return captionPreferences->sortedTrackListForMenu(trackList);
     95    return page->group().captionPreferences().sortedTrackListForMenu(trackList);
    9796}
    9897
     
    106105        return Vector<RefPtr<AudioTrack>>();
    107106
    108     CaptionUserPreferences* captionPreferences = page->group().captionPreferences();
    109     return captionPreferences->sortedTrackListForMenu(trackList);
     107    return page->group().captionPreferences().sortedTrackListForMenu(trackList);
    110108}
    111109
     
    119117        return emptyString();
    120118
    121     CaptionUserPreferences* captionPreferences = page->group().captionPreferences();
    122     return captionPreferences->displayNameForTrack(track);
     119    return page->group().captionPreferences().displayNameForTrack(track);
    123120}
    124121
     
    132129        return emptyString();
    133130
    134     CaptionUserPreferences* captionPreferences = page->group().captionPreferences();
    135     return captionPreferences->displayNameForTrack(track);
     131    return page->group().captionPreferences().displayNameForTrack(track);
    136132}
    137133
     
    152148        return emptyAtom;
    153149
    154     switch (page->group().captionPreferences()->captionDisplayMode()) {
     150    switch (page->group().captionPreferences().captionDisplayMode()) {
    155151    case CaptionUserPreferences::Automatic:
    156152        return automaticKeyword();
  • trunk/Source/WebCore/dom/Document.cpp

    r196080 r196135  
    47164716{
    47174717    if (page())
    4718         page()->group().captionPreferences()->setInterestedInCaptionPreferenceChanges();
     4718        page()->group().captionPreferences().setInterestedInCaptionPreferenceChanges();
    47194719
    47204720    m_captionPreferencesChangedElements.add(e);
  • trunk/Source/WebCore/html/HTMLMediaElement.cpp

    r196117 r196135  
    445445#if ENABLE(VIDEO_TRACK)
    446446    if (document.page())
    447         m_captionDisplayMode = document.page()->group().captionPreferences()->captionDisplayMode();
     447        m_captionDisplayMode = document.page()->group().captionPreferences().captionDisplayMode();
    448448#endif
    449449
     
    35823582        document.registerForCaptionPreferencesChangedCallbacks(this);
    35833583        if (Page* page = document.page())
    3584             m_captionDisplayMode = page->group().captionPreferences()->captionDisplayMode();
     3584            m_captionDisplayMode = page->group().captionPreferences().captionDisplayMode();
    35853585    }
    35863586
     
    37863786
    37873787    Page* page = document().page();
    3788     CaptionUserPreferences* captionPreferences = page ? page->group().captionPreferences() : 0;
     3788    CaptionUserPreferences* captionPreferences = page ? &page->group().captionPreferences() : 0;
    37893789    CaptionUserPreferences::CaptionDisplayMode displayMode = captionPreferences ? captionPreferences->captionDisplayMode() : CaptionUserPreferences::Automatic;
    37903790
     
    40094009    }
    40104010
    4011     CaptionUserPreferences* captionPreferences = document().page() ? document().page()->group().captionPreferences() : 0;
    4012     if (!captionPreferences)
    4013         return;
    4014 
     4011    if (!document().page())
     4012        return;
     4013
     4014    auto& captionPreferences = document().page()->group().captionPreferences();
    40154015    CaptionUserPreferences::CaptionDisplayMode displayMode;
    40164016    if (trackToSelect == TextTrack::captionMenuOffItem())
     
    40214021        displayMode = CaptionUserPreferences::AlwaysOn;
    40224022        if (trackToSelect->language().length())
    4023             captionPreferences->setPreferredLanguage(trackToSelect->language());
    4024     }
    4025 
    4026     captionPreferences->setCaptionDisplayMode(displayMode);
     4023            captionPreferences.setPreferredLanguage(trackToSelect->language());
     4024    }
     4025
     4026    captionPreferences.setCaptionDisplayMode(displayMode);
    40274027}
    40284028
     
    57265726        return;
    57275727
    5728     CaptionUserPreferences::CaptionDisplayMode displayMode = document().page()->group().captionPreferences()->captionDisplayMode();
     5728    CaptionUserPreferences::CaptionDisplayMode displayMode = document().page()->group().captionPreferences().captionDisplayMode();
    57295729    if (m_captionDisplayMode == displayMode)
    57305730        return;
     
    61686168Vector<String> HTMLMediaElement::mediaPlayerPreferredAudioCharacteristics() const
    61696169{
    6170     Page* page = document().page();
    6171     if (CaptionUserPreferences* captionPreferences = page ? page->group().captionPreferences() : nullptr)
    6172         return captionPreferences->preferredAudioCharacteristics();
     6170    if (Page* page = document().page())
     6171        return page->group().captionPreferences().preferredAudioCharacteristics();
    61736172    return Vector<String>();
    61746173}
  • trunk/Source/WebCore/html/shadow/MediaControlElements.cpp

    r194819 r196135  
    729729    if (!document().page())
    730730        return;
    731     CaptionUserPreferences::CaptionDisplayMode displayMode = document().page()->group().captionPreferences()->captionDisplayMode();
     731    CaptionUserPreferences::CaptionDisplayMode displayMode = document().page()->group().captionPreferences().captionDisplayMode();
    732732
    733733    HTMLMediaElement* mediaElement = parentMediaElement(this);
     
    803803    if (!document().page())
    804804        return;
    805     CaptionUserPreferences* captionPreferences = document().page()->group().captionPreferences();
    806     Vector<RefPtr<TextTrack>> tracksForMenu = captionPreferences->sortedTrackListForMenu(trackList);
     805    auto& captionPreferences = document().page()->group().captionPreferences();
     806    Vector<RefPtr<TextTrack>> tracksForMenu = captionPreferences.sortedTrackListForMenu(trackList);
    807807
    808808    Ref<Element> captionsHeader = document().createElement(h3Tag, ASSERT_NO_EXCEPTION);
     
    813813    for (auto& textTrack : tracksForMenu) {
    814814        Ref<Element> menuItem = document().createElement(liTag, ASSERT_NO_EXCEPTION);
    815         menuItem->appendChild(document().createTextNode(captionPreferences->displayNameForTrack(textTrack.get())));
     815        menuItem->appendChild(document().createTextNode(captionPreferences.displayNameForTrack(textTrack.get())));
    816816        captionsMenuList->appendChild(menuItem.copyRef());
    817817        m_menuItems.append(menuItem.ptr());
     
    12201220
    12211221    float smallestDimension = std::min(m_videoDisplaySize.size().height(), m_videoDisplaySize.size().width());
    1222     float fontScale = document().page()->group().captionPreferences()->captionFontSizeScaleAndImportance(m_fontSizeIsImportant);
     1222    float fontScale = document().page()->group().captionPreferences().captionFontSizeScaleAndImportance(m_fontSizeIsImportant);
    12231223    m_fontSize = lroundf(smallestDimension * fontScale);
    12241224
  • trunk/Source/WebCore/page/PageGroup.cpp

    r190169 r196135  
    115115}
    116116
    117 CaptionUserPreferences* PageGroup::captionPreferences()
     117CaptionUserPreferences& PageGroup::captionPreferences()
    118118{
    119119    if (!m_captionPreferences) {
     
    125125    }
    126126
    127     return m_captionPreferences.get();
     127    return *m_captionPreferences.get();
    128128}
    129129#endif
  • trunk/Source/WebCore/page/PageGroup.h

    r177967 r196135  
    5858#if ENABLE(VIDEO_TRACK)
    5959        WEBCORE_EXPORT void captionPreferencesChanged();
    60         WEBCORE_EXPORT CaptionUserPreferences* captionPreferences();
     60        WEBCORE_EXPORT CaptionUserPreferences& captionPreferences();
    6161#endif
    6262
  • trunk/Source/WebCore/platform/cocoa/WebVideoFullscreenModelVideoElement.mm

    r195755 r196135  
    314314    TextTrack* offItem = m_videoElement->mediaControlsHost()->captionMenuOffItem();
    315315    TextTrack* automaticItem = m_videoElement->mediaControlsHost()->captionMenuAutomaticItem();
    316     CaptionUserPreferences& captionPreferences = *m_videoElement->document().page()->group().captionPreferences();
     316
     317    auto& captionPreferences = m_videoElement->document().page()->group().captionPreferences();
    317318    m_legibleTracksForMenu = captionPreferences.sortedTrackListForMenu(trackList);
    318 
    319319    m_audioTracksForMenu = captionPreferences.sortedTrackListForMenu(audioTrackList);
    320    
     320
    321321    Vector<String> audioTrackDisplayNames;
    322322    uint64_t selectedAudioIndex = 0;
  • trunk/Source/WebCore/testing/InternalSettings.cpp

    r195452 r196135  
    399399    if (!page())
    400400        return;
    401     CaptionUserPreferences* captionPreferences = page()->group().captionPreferences();
    402 
     401
     402    auto& captionPreferences = page()->group().captionPreferences();
    403403    if (equalLettersIgnoringASCIICase(kind, "subtitles"))
    404         captionPreferences->setUserPrefersSubtitles(enabled);
     404        captionPreferences.setUserPrefersSubtitles(enabled);
    405405    else if (equalLettersIgnoringASCIICase(kind, "captions"))
    406         captionPreferences->setUserPrefersCaptions(enabled);
     406        captionPreferences.setUserPrefersCaptions(enabled);
    407407    else if (equalLettersIgnoringASCIICase(kind, "textdescriptions"))
    408         captionPreferences->setUserPrefersTextDescriptions(enabled);
     408        captionPreferences.setUserPrefersTextDescriptions(enabled);
    409409    else
    410410        ec = SYNTAX_ERR;
     
    422422    if (!page())
    423423        return false;
    424     CaptionUserPreferences* captionPreferences = page()->group().captionPreferences();
    425 
     424
     425    auto& captionPreferences = page()->group().captionPreferences();
    426426    if (equalLettersIgnoringASCIICase(kind, "subtitles"))
    427         return captionPreferences->userPrefersSubtitles();
     427        return captionPreferences.userPrefersSubtitles();
    428428    if (equalLettersIgnoringASCIICase(kind, "captions"))
    429         return captionPreferences->userPrefersCaptions();
     429        return captionPreferences.userPrefersCaptions();
    430430    if (equalLettersIgnoringASCIICase(kind, "textdescriptions"))
    431         return captionPreferences->userPrefersTextDescriptions();
     431        return captionPreferences.userPrefersTextDescriptions();
    432432
    433433    ec = SYNTAX_ERR;
  • trunk/Source/WebCore/testing/Internals.cpp

    r196090 r196135  
    376376    page->inspectorController().setProfilerEnabled(false);
    377377#if ENABLE(VIDEO_TRACK)
    378     page->group().captionPreferences()->setCaptionsStyleSheetOverride(emptyString());
    379     page->group().captionPreferences()->setTestingMode(false);
     378    page->group().captionPreferences().setCaptionsStyleSheetOverride(emptyString());
     379    page->group().captionPreferences().setTestingMode(false);
    380380#endif
    381381    if (!page->mainFrame().editor().isContinuousSpellCheckingEnabled())
     
    408408#if ENABLE(VIDEO_TRACK)
    409409    if (document && document->page())
    410         document->page()->group().captionPreferences()->setTestingMode(true);
     410        document->page()->group().captionPreferences().setTestingMode(true);
    411411#endif
    412412
     
    14691469        return Vector<String>();
    14701470#if ENABLE(VIDEO_TRACK)
    1471     return document->page()->group().captionPreferences()->preferredAudioCharacteristics();
     1471    return document->page()->group().captionPreferences().preferredAudioCharacteristics();
    14721472#else
    14731473    return Vector<String>();
     
    14811481        return;
    14821482#if ENABLE(VIDEO_TRACK)
    1483     document->page()->group().captionPreferences()->setPreferredAudioCharacteristic(characteristic);
     1483    document->page()->group().captionPreferences().setPreferredAudioCharacteristic(characteristic);
    14841484#else
    14851485    UNUSED_PARAM(characteristic);
     
    27562756
    27572757#if ENABLE(VIDEO_TRACK)
    2758     return document->page()->group().captionPreferences()->captionsStyleSheetOverride();
     2758    return document->page()->group().captionPreferences().captionsStyleSheetOverride();
    27592759#else
    27602760    return emptyString();
     
    27712771
    27722772#if ENABLE(VIDEO_TRACK)
    2773     document->page()->group().captionPreferences()->setCaptionsStyleSheetOverride(override);
     2773    document->page()->group().captionPreferences().setCaptionsStyleSheetOverride(override);
    27742774#else
    27752775    UNUSED_PARAM(override);
     
    27862786
    27872787#if ENABLE(VIDEO_TRACK)
    2788     document->page()->group().captionPreferences()->setPrimaryAudioTrackLanguageOverride(language);
     2788    document->page()->group().captionPreferences().setPrimaryAudioTrackLanguageOverride(language);
    27892789#else
    27902790    UNUSED_PARAM(language);
     
    28012801   
    28022802#if ENABLE(VIDEO_TRACK)
    2803     CaptionUserPreferences* captionPreferences = document->page()->group().captionPreferences();
     2803    auto& captionPreferences = document->page()->group().captionPreferences();
    28042804   
    28052805    if (equalLettersIgnoringASCIICase(mode, "automatic"))
    2806         captionPreferences->setCaptionDisplayMode(CaptionUserPreferences::Automatic);
     2806        captionPreferences.setCaptionDisplayMode(CaptionUserPreferences::Automatic);
    28072807    else if (equalLettersIgnoringASCIICase(mode, "forcedonly"))
    2808         captionPreferences->setCaptionDisplayMode(CaptionUserPreferences::ForcedOnly);
     2808        captionPreferences.setCaptionDisplayMode(CaptionUserPreferences::ForcedOnly);
    28092809    else if (equalLettersIgnoringASCIICase(mode, "alwayson"))
    2810         captionPreferences->setCaptionDisplayMode(CaptionUserPreferences::AlwaysOn);
     2810        captionPreferences.setCaptionDisplayMode(CaptionUserPreferences::AlwaysOn);
    28112811    else if (equalLettersIgnoringASCIICase(mode, "manual"))
    2812         captionPreferences->setCaptionDisplayMode(CaptionUserPreferences::Manual);
     2812        captionPreferences.setCaptionDisplayMode(CaptionUserPreferences::Manual);
    28132813    else
    28142814        ec = SYNTAX_ERR;
Note: See TracChangeset for help on using the changeset viewer.