// WARNING: OOjs-UI is NOT TESTED with older browsers and is likely to break
// if loaded in browsers that don't support ES5
return call_user_func( function () {
- // Core default themes
- $themes = array( 'default' => 'mediawiki' );
- $themes += ExtensionRegistry::getInstance()->getAttribute( 'SkinOOUIThemes' );
- $modules = array();
+ $themes = ExtensionRegistry::getInstance()->getAttribute( 'SkinOOUIThemes' );
+ // We only use the theme names for file names, and they are lowercase
+ $themes = array_map( 'strtolower', $themes );
+ $themes['default'] = 'mediawiki';
+ $modules = array();
$modules['oojs-ui'] = array(
'scripts' => array(
'resources/lib/oojs-ui/oojs-ui.js',
'ooui-outline-control-move-down',
'ooui-outline-control-move-up',
'ooui-outline-control-remove',
+ 'ooui-selectfile-button-select',
+ 'ooui-selectfile-dragdrop-placeholder',
+ 'ooui-selectfile-not-supported',
+ 'ooui-selectfile-placeholder',
'ooui-toolbar-more',
'ooui-toolgroup-collapse',
'ooui-toolgroup-expand',
'icons', // oojs-ui.styles.icons
'indicators', // oojs-ui.styles.indicators
'textures', // oojs-ui.styles.textures
+ 'icons-accessibility', // oojs-ui.styles.icons-accessibility
'icons-alerts', // oojs-ui.styles.icons-alerts
'icons-content', // oojs-ui.styles.icons-content
'icons-editing-advanced', // oojs-ui.styles.icons-editing-advanced
if ( substr( $name, 0, 5 ) === 'icons' ) {
$module['selectorWithoutVariant'] = '.oo-ui-icon-{name}, .mw-ui-icon-{name}:before';
- $module['selectorWithVariant'] = '.oo-ui-image-{variant} .oo-ui-icon-{name},
+ $module['selectorWithVariant'] = '
.oo-ui-image-{variant}.oo-ui-icon-{name}, .mw-ui-icon-{name}-{variant}:before,
+ /* Hack for Flow, see T110051 */
.mw-ui-hovericon:hover .mw-ui-icon-{name}-{variant}-hover:before,
.mw-ui-hovericon.mw-ui-icon-{name}-{variant}-hover:hover:before';
}