Merge "Avoid loading of jquery.i18n and messages until trigger clicked"
This commit is contained in:
@@ -17,7 +17,8 @@ $wgResourceModules['ext.uls.languagenames'] = array(
|
|||||||
);
|
);
|
||||||
|
|
||||||
$wgResourceModules['ext.uls.messages'] = array(
|
$wgResourceModules['ext.uls.messages'] = array(
|
||||||
'class' => 'ResourceLoaderULSJsonMessageModule'
|
'class' => 'ResourceLoaderULSJsonMessageModule',
|
||||||
|
'dependencies' => 'ext.uls.i18n',
|
||||||
);
|
);
|
||||||
|
|
||||||
$wgResourceModules['ext.uls.buttons'] = array(
|
$wgResourceModules['ext.uls.buttons'] = array(
|
||||||
@@ -28,11 +29,10 @@ $wgResourceModules['ext.uls.displaysettings'] = array(
|
|||||||
'scripts' => 'resources/js/ext.uls.displaysettings.js',
|
'scripts' => 'resources/js/ext.uls.displaysettings.js',
|
||||||
'styles' => 'resources/css/ext.uls.displaysettings.css',
|
'styles' => 'resources/css/ext.uls.displaysettings.css',
|
||||||
'dependencies' => array(
|
'dependencies' => array(
|
||||||
'ext.uls.buttons',
|
// Common dependencies come from languagesettings
|
||||||
'ext.uls.languagesettings',
|
'ext.uls.languagesettings',
|
||||||
'ext.uls.webfonts',
|
|
||||||
'ext.uls.mediawiki',
|
'ext.uls.mediawiki',
|
||||||
'jquery.i18n',
|
'ext.uls.webfonts',
|
||||||
'mediawiki.api.parse',
|
'mediawiki.api.parse',
|
||||||
),
|
),
|
||||||
) + $resourcePaths;
|
) + $resourcePaths;
|
||||||
@@ -47,6 +47,7 @@ $wgResourceModules['ext.uls.ime'] = array(
|
|||||||
'ext.uls.init',
|
'ext.uls.init',
|
||||||
'ext.uls.preferences',
|
'ext.uls.preferences',
|
||||||
'ext.uls.mediawiki',
|
'ext.uls.mediawiki',
|
||||||
|
'ext.uls.messages',
|
||||||
'jquery.ime',
|
'jquery.ime',
|
||||||
),
|
),
|
||||||
'messages' => array(
|
'messages' => array(
|
||||||
@@ -72,7 +73,6 @@ $wgResourceModules['ext.uls.init'] = array(
|
|||||||
'jquery.client',
|
'jquery.client',
|
||||||
'jquery.json',
|
'jquery.json',
|
||||||
'jquery.cookie',
|
'jquery.cookie',
|
||||||
'ext.uls.messages',
|
|
||||||
),
|
),
|
||||||
'position' => 'top',
|
'position' => 'top',
|
||||||
) + $resourcePaths;
|
) + $resourcePaths;
|
||||||
@@ -94,12 +94,11 @@ $wgResourceModules['ext.uls.inputsettings'] = array(
|
|||||||
'scripts' => 'resources/js/ext.uls.inputsettings.js',
|
'scripts' => 'resources/js/ext.uls.inputsettings.js',
|
||||||
'styles' => 'resources/css/ext.uls.inputsettings.css',
|
'styles' => 'resources/css/ext.uls.inputsettings.css',
|
||||||
'dependencies' => array(
|
'dependencies' => array(
|
||||||
'ext.uls.buttons',
|
|
||||||
'ext.uls.languagesettings',
|
|
||||||
'ext.uls.ime',
|
'ext.uls.ime',
|
||||||
|
// Common dependencies come from languagesettings
|
||||||
|
'ext.uls.languagesettings',
|
||||||
'ext.uls.mediawiki',
|
'ext.uls.mediawiki',
|
||||||
'jquery.ime',
|
'jquery.ime',
|
||||||
'jquery.i18n',
|
|
||||||
),
|
),
|
||||||
) + $resourcePaths;
|
) + $resourcePaths;
|
||||||
|
|
||||||
@@ -116,6 +115,9 @@ $wgResourceModules['ext.uls.interface'] = array(
|
|||||||
),
|
),
|
||||||
'messages' => array(
|
'messages' => array(
|
||||||
'uls-plang-title-languages',
|
'uls-plang-title-languages',
|
||||||
|
'ext-uls-select-language-settings-icon-tooltip',
|
||||||
|
'ext-uls-undo-language-tooltip-text',
|
||||||
|
'ext-uls-language-settings-preferences-link',
|
||||||
),
|
),
|
||||||
'position' => 'top',
|
'position' => 'top',
|
||||||
) + $resourcePaths;
|
) + $resourcePaths;
|
||||||
@@ -125,6 +127,7 @@ $wgResourceModules['ext.uls.languagesettings'] = array(
|
|||||||
'styles' => 'resources/css/ext.uls.languagesettings.css',
|
'styles' => 'resources/css/ext.uls.languagesettings.css',
|
||||||
'dependencies' => array(
|
'dependencies' => array(
|
||||||
'ext.uls.buttons',
|
'ext.uls.buttons',
|
||||||
|
'ext.uls.messages',
|
||||||
'ext.uls.preferences',
|
'ext.uls.preferences',
|
||||||
// The grid styles are used here,
|
// The grid styles are used here,
|
||||||
// but ULS itself is lazy-loaded
|
// but ULS itself is lazy-loaded
|
||||||
@@ -203,7 +206,6 @@ $wgResourceModules['ext.uls.mediawiki'] = array(
|
|||||||
'scripts' => 'resources/js/ext.uls.mediawiki.js',
|
'scripts' => 'resources/js/ext.uls.mediawiki.js',
|
||||||
'dependencies' => array(
|
'dependencies' => array(
|
||||||
'jquery.uls',
|
'jquery.uls',
|
||||||
'jquery.i18n',
|
|
||||||
'mediawiki.util',
|
'mediawiki.util',
|
||||||
'ext.uls.init',
|
'ext.uls.init',
|
||||||
'ext.uls.languagenames',
|
'ext.uls.languagenames',
|
||||||
|
|||||||
@@ -34,6 +34,9 @@ $messages['en'] = array(
|
|||||||
'uls-plang-title-languages' => 'Languages',
|
'uls-plang-title-languages' => 'Languages',
|
||||||
'uls-ime-helppage' => 'https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:UniversalLanguageSelector/Input_methods/$1',
|
'uls-ime-helppage' => 'https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:UniversalLanguageSelector/Input_methods/$1',
|
||||||
'uls-preference' => 'Enable the [https://www.mediawiki.org/wiki/Special:MyLanguage/Universal_Language_Selector Universal Language Selector]',
|
'uls-preference' => 'Enable the [https://www.mediawiki.org/wiki/Special:MyLanguage/Universal_Language_Selector Universal Language Selector]',
|
||||||
|
'ext-uls-select-language-settings-icon-tooltip' => 'Language settings',
|
||||||
|
'ext-uls-undo-language-tooltip-text' => 'Language changed from $1',
|
||||||
|
'ext-uls-language-settings-preferences-link' => 'More language settings',
|
||||||
);
|
);
|
||||||
|
|
||||||
/** Message documentation (Message documentation)
|
/** Message documentation (Message documentation)
|
||||||
|
|||||||
@@ -11,8 +11,6 @@
|
|||||||
"ext-uls-display-settings-fonts-tab": "Fonts",
|
"ext-uls-display-settings-fonts-tab": "Fonts",
|
||||||
"ext-uls-display-settings-title-short": "Display",
|
"ext-uls-display-settings-title-short": "Display",
|
||||||
"ext-uls-display-settings-desc": "Set language used for menus and fonts.",
|
"ext-uls-display-settings-desc": "Set language used for menus and fonts.",
|
||||||
"ext-uls-select-language-settings-icon-tooltip": "Language settings",
|
|
||||||
"ext-uls-undo-language-tooltip-text": "Language changed from $1",
|
|
||||||
"ext-uls-language-settings-title": "Language settings",
|
"ext-uls-language-settings-title": "Language settings",
|
||||||
"ext-uls-language-settings-apply": "Apply settings",
|
"ext-uls-language-settings-apply": "Apply settings",
|
||||||
"ext-uls-language-settings-cancel": "Cancel",
|
"ext-uls-language-settings-cancel": "Cancel",
|
||||||
@@ -47,6 +45,5 @@
|
|||||||
"ext-uls-input-disable-notification-undo": "Undo",
|
"ext-uls-input-disable-notification-undo": "Undo",
|
||||||
"ext-uls-input-disable-notification-info-personal": "You can enable the input tools at any time from the language settings.",
|
"ext-uls-input-disable-notification-info-personal": "You can enable the input tools at any time from the language settings.",
|
||||||
"ext-uls-input-disable-notification-info-interlanguage": "You can enable the input tools at any time from the language settings next to the language list.",
|
"ext-uls-input-disable-notification-info-interlanguage": "You can enable the input tools at any time from the language settings next to the language list.",
|
||||||
"ext-uls-language-settings-applying": "Applying...",
|
"ext-uls-language-settings-applying": "Applying..."
|
||||||
"ext-uls-language-settings-preferences-link": "More language settings"
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -40,11 +40,6 @@
|
|||||||
}() );
|
}() );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
var jsonLoader = null,
|
|
||||||
initialized = false,
|
|
||||||
currentLang = mw.config.get( 'wgUserLanguage' );
|
|
||||||
|
|
||||||
mw.uls = mw.uls || {};
|
mw.uls = mw.uls || {};
|
||||||
mw.uls.previousLanguagesCookie = 'uls-previous-languages';
|
mw.uls.previousLanguagesCookie = 'uls-previous-languages';
|
||||||
mw.uls.previousLanguageAutonymCookie = 'uls-previous-language-autonym';
|
mw.uls.previousLanguageAutonymCookie = 'uls-previous-language-autonym';
|
||||||
@@ -230,33 +225,19 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialize ULS front-end and its i18n.
|
* Initialize ULS front-end if browser is supported.
|
||||||
*
|
*
|
||||||
* @param {Function} callback callback function to be called after initialization.
|
* @param {Function} callback callback function to be called after initialization.
|
||||||
*/
|
*/
|
||||||
mw.uls.init = function ( callback ) {
|
mw.uls.init = function ( callback ) {
|
||||||
|
|
||||||
callback = callback || $.noop;
|
|
||||||
|
|
||||||
if ( initialized ) {
|
|
||||||
callback.call( this );
|
|
||||||
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( !isBrowserSupported() ) {
|
if ( !isBrowserSupported() ) {
|
||||||
$( '#pt-uls' ).hide();
|
$( '#pt-uls' ).hide();
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !jsonLoader ) {
|
if ( callback ) {
|
||||||
jsonLoader = mw.uls.loadLocalization( currentLang );
|
callback.call( this );
|
||||||
} else {
|
|
||||||
jsonLoader.done( function () {
|
|
||||||
initialized = true;
|
|
||||||
} );
|
|
||||||
jsonLoader.done( callback );
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -231,7 +231,7 @@
|
|||||||
// Get the html of the link by wrapping it in div first
|
// Get the html of the link by wrapping it in div first
|
||||||
link = $( '<div>' ).html( link ).html();
|
link = $( '<div>' ).html( link ).html();
|
||||||
|
|
||||||
return $.i18n( 'ext-uls-undo-language-tooltip-text', link );
|
return mw.msg( 'ext-uls-undo-language-tooltip-text', link );
|
||||||
}
|
}
|
||||||
} );
|
} );
|
||||||
|
|
||||||
@@ -342,7 +342,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
$ulsTrigger.attr( {
|
$ulsTrigger.attr( {
|
||||||
title: $.i18n( 'ext-uls-select-language-settings-icon-tooltip' )
|
title: mw.msg( 'ext-uls-select-language-settings-icon-tooltip' )
|
||||||
} );
|
} );
|
||||||
|
|
||||||
$ulsTrigger.on( 'click', function ( e, eventParams ) {
|
$ulsTrigger.on( 'click', function ( e, eventParams ) {
|
||||||
@@ -459,7 +459,7 @@
|
|||||||
|
|
||||||
// Bind language settings to preferences page link
|
// Bind language settings to preferences page link
|
||||||
$( '#uls-preferences-link' )
|
$( '#uls-preferences-link' )
|
||||||
.text( $.i18n( 'ext-uls-language-settings-preferences-link' ) )
|
.text( mw.msg( 'ext-uls-language-settings-preferences-link' ) )
|
||||||
.click( function () {
|
.click( function () {
|
||||||
$ulsTrigger.trigger( 'click', {
|
$ulsTrigger.trigger( 'click', {
|
||||||
source: 'preferences'
|
source: 'preferences'
|
||||||
|
|||||||
Reference in New Issue
Block a user