Changeset 167145 in webkit


Ignore:
Timestamp:
Apr 11, 2014 1:42:14 PM (10 years ago)
Author:
Brent Fulgham
Message:

Regression: media controls and status messages are no longer localized.
https://bugs.webkit.org/show_bug.cgi?id=120956

Reviewed by Jer Noble.

  • English.lproj/mediaControlsLocalizedStrings.js: Added.

(mediaControlsLocalizedStrings): Moved from mediaControlsApple.js.

  • English.lproj/mediaControlsLocalizedStringsiOS.js: Added.

(mediaControlsLocalizedStringsiOS): Moved from mediaControlsiOS.js.

  • Modules/mediacontrols/mediaControlsApple.js:

(Controller.prototype.UIString): Get strings from external file.

  • Modules/mediacontrols/mediaControlsiOS.js:

(ControllerIOS.prototype.UIString): Ditto.

  • WebCore.vcxproj/copyWebCoreResourceFiles.cmd: Copy to Windows bundle.
  • WebCore.xcodeproj/project.pbxproj: Copy new files to bundle.
  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::mediaControlsScript): Load the locale-specific
string resource when loading the media controls.

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::mediaControlsScript): Ditto.

  • rendering/RenderThemeWin.cpp:

(WebCore::RenderThemeWin::mediaControlsScript): Ditto.

Location:
trunk/Source/WebCore
Files:
2 added
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r167144 r167145  
     12014-04-11  Brent Fulgham  <bfulgham@apple.com>
     2
     3        Regression: media controls and status messages are no longer localized.
     4        https://bugs.webkit.org/show_bug.cgi?id=120956
     5
     6        Reviewed by Jer Noble.
     7
     8        * English.lproj/mediaControlsLocalizedStrings.js: Added.
     9        (mediaControlsLocalizedStrings): Moved from mediaControlsApple.js.
     10        * English.lproj/mediaControlsLocalizedStringsiOS.js: Added.
     11        (mediaControlsLocalizedStringsiOS): Moved from mediaControlsiOS.js.
     12        * Modules/mediacontrols/mediaControlsApple.js:
     13        (Controller.prototype.UIString): Get strings from external file.
     14        * Modules/mediacontrols/mediaControlsiOS.js:
     15        (ControllerIOS.prototype.UIString): Ditto.
     16        * WebCore.vcxproj/copyWebCoreResourceFiles.cmd: Copy to Windows bundle.
     17        * WebCore.xcodeproj/project.pbxproj: Copy new files to bundle.
     18        * rendering/RenderThemeIOS.mm:
     19        (WebCore::RenderThemeIOS::mediaControlsScript): Load the locale-specific
     20        string resource when loading the media controls.
     21        * rendering/RenderThemeMac.mm:
     22        (WebCore::RenderThemeMac::mediaControlsScript): Ditto.
     23        * rendering/RenderThemeWin.cpp:
     24        (WebCore::RenderThemeWin::mediaControlsScript): Ditto.
     25
    1262014-04-11  Brent Fulgham  <bfulgham@apple.com>
    227
  • trunk/Source/WebCore/Modules/mediacontrols/mediaControlsApple.js

    r166227 r167145  
    109109    // Localized string accessor
    110110    UIString: function(s){
     111        if (!this.localizedStrings)
     112            this.localizedStrings = mediaControlsLocalizedStrings();
     113
    111114        if (this.localizedStrings[s])
    112115            return this.localizedStrings[s];
    113         else
    114             return s; // FIXME: log something if string not localized.
    115     },
    116     localizedStrings: {
    117         // FIXME: Move localization to ext strings file <http://webkit.org/b/120956>
    118         'Aborted': 'Aborted',
    119         'Audio Playback': 'Audio Playback',
    120         'Captions': 'Captions',
    121         'Display Full Screen': 'Display Full Screen',
    122         'Duration': 'Duration',
    123         'Elapsed': 'Elapsed',
    124         'Error': 'Error',
    125         'Exit Full Screen': 'Exit Full Screen',
    126         'Fast Forward': 'Fast Forward',
    127         'Loading': 'Loading',
    128         'Maximum Volume': 'Maximum Volume',
    129         'Minimum Volume': 'Minimum Volume',
    130         'Mute': 'Mute',
    131         'Pause': 'Pause',
    132         'Play': 'Play',
    133         'Remaining': 'Remaining',
    134         'Rewind': 'Rewind',
    135         'Rewind %%sec%% Seconds': 'Rewind %%sec%% Seconds',
    136         'Stalled': 'Stalled',
    137         'Subtitles': 'Subtitles',
    138         'Suspended': 'Suspended',
    139         'Unmute': 'Unmute',
    140         'Video Playback': 'Video Playback',
    141         'Volume': 'Volume',
    142         'Waiting': 'Waiting'
     116
     117        console.error("Localized string \"" + s + "\" not found.");
     118        return "LOCALIZED STRING NOT FOUND";
    143119    },
    144120
  • trunk/Source/WebCore/Modules/mediacontrols/mediaControlsiOS.js

    r167057 r167145  
    6868            return string;
    6969
     70        if (!this.localizedStrings)
     71            this.localizedStrings = mediaControlsLocalizedStringsiOS();
     72
    7073        if (this.localizedStrings[s])
    7174            return this.localizedStrings[s];
    72         else
    73             return s; // FIXME: LOG something if string not localized.
    74     },
    75     localizedStrings: {
    76         // FIXME: Move localization to ext strings file <http://webkit.org/b/120956>
    77         '##AIRPLAY_DEVICE_TYPE##': 'AirPlay',
    78         '##AIRPLAY_DEVICE_NAME##': 'This video is playing on "##DEVICE_NAME##".',
    79 
    80         '##TVOUT_DEVICE_TYPE##': 'TV Connected',
    81         '##TVOUT_DEVICE_NAME##': 'This video is playing on the TV.',
     75
     76        console.error("Localized string \"" + s + "\" not found.");
     77        return "LOCALIZED STRING NOT FOUND";
    8278    },
    8379
  • trunk/Source/WebCore/WebCore.vcxproj/copyWebCoreResourceFiles.cmd

    r166782 r167145  
    11mkdir 2>NUL "%CONFIGURATIONBUILDDIR%\bin%PlatformArchitecture%\WebKit.resources\en.lproj"
    22xcopy /y /d /s /exclude:xcopy.excludes "%ProjectDir%..\English.lproj\Localizable.strings" "%CONFIGURATIONBUILDDIR%\bin%PlatformArchitecture%\WebKit.resources\en.lproj"
     3xcopy /y /d /s /exclude:xcopy.excludes "%ProjectDir%..\English.lproj\mediaControlsLocalizedStrings.js" "%CONFIGURATIONBUILDDIR%\bin%PlatformArchitecture%\WebKit.resources\en.lproj"
    34xcopy /y /d /s "%ProjectDir%..\Modules\mediacontrols\mediaControlsApple.css" "%CONFIGURATIONBUILDDIR%\bin%PlatformArchitecture%\WebKit.resources"
    45xcopy /y /d /s "%ProjectDir%..\Modules\mediacontrols\mediaControlsApple.js" "%CONFIGURATIONBUILDDIR%\bin%PlatformArchitecture%\WebKit.resources"
  • trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj

    r167133 r167145  
    22862286                7A0E771E10C00DB100A0276E /* JSInspectorFrontendHost.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A0E771C10C00DB100A0276E /* JSInspectorFrontendHost.cpp */; };
    22872287                7A0E771F10C00DB100A0276E /* JSInspectorFrontendHost.h in Headers */ = {isa = PBXBuildFile; fileRef = 7A0E771D10C00DB100A0276E /* JSInspectorFrontendHost.h */; };
     2288                7A1D7FCB18F85F0F00C385AD /* mediaControlsLocalizedStrings.js in Resources */ = {isa = PBXBuildFile; fileRef = 7A1D7FC918F85F0F00C385AD /* mediaControlsLocalizedStrings.js */; };
     2289                7A1D7FCE18F86E5600C385AD /* mediaControlsLocalizedStringsiOS.js in Resources */ = {isa = PBXBuildFile; fileRef = 7A1D7FCC18F86E5600C385AD /* mediaControlsLocalizedStringsiOS.js */; };
    22882290                7A1F2B52126C61B20006A7E6 /* InspectorClient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A1F2B51126C61B20006A7E6 /* InspectorClient.cpp */; };
    22892291                7A24587B1021EAF4000A00AA /* InspectorDOMAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7A2458791021EAF4000A00AA /* InspectorDOMAgent.cpp */; };
     
    93189320                7A0E771C10C00DB100A0276E /* JSInspectorFrontendHost.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSInspectorFrontendHost.cpp; sourceTree = "<group>"; };
    93199321                7A0E771D10C00DB100A0276E /* JSInspectorFrontendHost.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSInspectorFrontendHost.h; sourceTree = "<group>"; };
     9322                7A1D7FCA18F85F0F00C385AD /* English */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.javascript; name = English; path = English.lproj/mediaControlsLocalizedStrings.js; sourceTree = SOURCE_ROOT; };
     9323                7A1D7FCD18F86E5600C385AD /* English */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.javascript; name = English; path = English.lproj/mediaControlsLocalizedStringsiOS.js; sourceTree = SOURCE_ROOT; };
    93209324                7A1F2B51126C61B20006A7E6 /* InspectorClient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorClient.cpp; sourceTree = "<group>"; };
    93219325                7A2458791021EAF4000A00AA /* InspectorDOMAgent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorDOMAgent.cpp; sourceTree = "<group>"; };
     
    1459514599                        isa = PBXGroup;
    1459614600                        children = (
     14601                                7A1D7FCC18F86E5600C385AD /* mediaControlsLocalizedStringsiOS.js */,
     14602                                7A1D7FC918F85F0F00C385AD /* mediaControlsLocalizedStrings.js */,
    1459714603                                CD0DBB3E142274E600280263 /* audio */,
    1459814604                                65998A650E5F5FD3004E097A /* images */,
     
    2643026436                        buildActionMask = 2147483647;
    2643126437                        files = (
     26438                                7A1D7FCE18F86E5600C385AD /* mediaControlsLocalizedStringsiOS.js in Resources */,
    2643226439                                46F9D5DD0B0D60170028EE36 /* aliasCursor.png in Resources */,
    2643326440                                46D4F2490AF97E810035385A /* cellCursor.png in Resources */,
     
    2646226469                                46F9D5DF0B0D60170028EE36 /* progressCursor.png in Resources */,
    2646326470                                85136CA40AED665900F90A3D /* southEastResizeCursor.png in Resources */,
     26471                                7A1D7FCB18F85F0F00C385AD /* mediaControlsLocalizedStrings.js in Resources */,
    2646426472                                85136CA50AED665900F90A3D /* southResizeCursor.png in Resources */,
    2646526473                                85136CA60AED665900F90A3D /* southWestResizeCursor.png in Resources */,
     
    2956329571
    2956429572/* Begin PBXVariantGroup section */
     29573                7A1D7FC918F85F0F00C385AD /* mediaControlsLocalizedStrings.js */ = {
     29574                        isa = PBXVariantGroup;
     29575                        children = (
     29576                                7A1D7FCA18F85F0F00C385AD /* English */,
     29577                        );
     29578                        name = mediaControlsLocalizedStrings.js;
     29579                        sourceTree = "<group>";
     29580                };
     29581                7A1D7FCC18F86E5600C385AD /* mediaControlsLocalizedStringsiOS.js */ = {
     29582                        isa = PBXVariantGroup;
     29583                        children = (
     29584                                7A1D7FCD18F86E5600C385AD /* English */,
     29585                        );
     29586                        name = mediaControlsLocalizedStringsiOS.js;
     29587                        sourceTree = "<group>";
     29588                };
    2956529589                BCAD1808131C7A0D00990406 /* Localizable.strings */ = {
    2956629590                        isa = PBXVariantGroup;
  • trunk/Source/WebCore/rendering/RenderThemeIOS.mm

    r167106 r167145  
    12251225    if (m_mediaControlsScript.isEmpty()) {
    12261226        StringBuilder scriptBuilder;
     1227        scriptBuilder.append([NSString stringWithContentsOfFile:[[NSBundle bundleForClass:[WebCoreRenderThemeBundle class]] pathForResource:@"mediaControlsLocalizedStrings" ofType:@"js"] encoding:NSUTF8StringEncoding error:nil]);
    12271228        scriptBuilder.append([NSString stringWithContentsOfFile:[[NSBundle bundleForClass:[WebCoreRenderThemeBundle class]] pathForResource:@"mediaControlsApple" ofType:@"js"] encoding:NSUTF8StringEncoding error:nil]);
     1229        scriptBuilder.append([NSString stringWithContentsOfFile:[[NSBundle bundleForClass:[WebCoreRenderThemeBundle class]] pathForResource:@"mediaControlsLocalizedStringsiOS" ofType:@"js"] encoding:NSUTF8StringEncoding error:nil]);
    12281230        scriptBuilder.append([NSString stringWithContentsOfFile:[[NSBundle bundleForClass:[WebCoreRenderThemeBundle class]] pathForResource:@"mediaControlsiOS" ofType:@"js"] encoding:NSUTF8StringEncoding error:nil]);
    12291231        m_mediaControlsScript = scriptBuilder.toString();
  • trunk/Source/WebCore/rendering/RenderThemeMac.mm

    r166676 r167145  
    238238{
    239239#if ENABLE(MEDIA_CONTROLS_SCRIPT)
    240     if (m_mediaControlsScript.isEmpty())
    241         m_mediaControlsScript = [NSString stringWithContentsOfFile:[[NSBundle bundleForClass:[WebCoreRenderThemeBundle class]] pathForResource:@"mediaControlsApple" ofType:@"js"] encoding:NSUTF8StringEncoding error:nil];
     240    if (m_mediaControlsScript.isEmpty()) {
     241        StringBuilder scriptBuilder;
     242        scriptBuilder.append([NSString stringWithContentsOfFile:[[NSBundle bundleForClass:[WebCoreRenderThemeBundle class]] pathForResource:@"mediaControlsLocalizedStrings" ofType:@"js"] encoding:NSUTF8StringEncoding error:nil]);
     243        scriptBuilder.append([NSString stringWithContentsOfFile:[[NSBundle bundleForClass:[WebCoreRenderThemeBundle class]] pathForResource:@"mediaControlsApple" ofType:@"js"] encoding:NSUTF8StringEncoding error:nil]);
     244        m_mediaControlsScript = scriptBuilder.toString();
     245    }
    242246    return m_mediaControlsScript;
    243247#else
  • trunk/Source/WebCore/rendering/RenderThemeWin.cpp

    r166782 r167145  
    11441144{
    11451145#if ENABLE(MEDIA_CONTROLS_SCRIPT)
    1146     if (m_mediaControlsScript.isEmpty())
    1147         m_mediaControlsScript = stringWithContentsOfFile(CFSTR("mediaControlsApple"), CFSTR("js"));
     1146    if (m_mediaControlsScript.isEmpty()) {
     1147        StringBuilder scriptBuilder;
     1148        scriptBuilder.append(stringWithContentsOfFile(CFSTR("mediaControlsLocalizedStrings"), CFSTR("js")));
     1149        scriptBuilder.append(stringWithContentsOfFile(CFSTR("mediaControlsApple"), CFSTR("js")));
     1150        m_mediaControlsScript = scriptBuilder.toString();
     1151    }
    11481152    return m_mediaControlsScript;
    11491153#else
Note: See TracChangeset for help on using the changeset viewer.