diff --git a/includes/resourceloader/ResourceLoaderUserCSSPrefsModule.php b/includes/resourceloader/ResourceLoaderUserCSSPrefsModule.php index 67053362cc5..04b04349c89 100644 --- a/includes/resourceloader/ResourceLoaderUserCSSPrefsModule.php +++ b/includes/resourceloader/ResourceLoaderUserCSSPrefsModule.php @@ -50,14 +50,10 @@ class ResourceLoaderUserCSSPrefsModule extends ResourceLoaderModule { // Build CSS rules $rules = array(); - // Underline: 2 = browser default, 1 = always, 0 = never + // Underline: 2 = skin default, 1 = always, 0 = never if ( $options['underline'] < 2 ) { $rules[] = "a { text-decoration: " . ( $options['underline'] ? 'underline' : 'none' ) . "; }"; - } else { - # The scripts of these languages are very hard to read with underlines - $rules[] = 'a:lang(ar), a:lang(kk-arab), a:lang(mzn), ' . - 'a:lang(ps), a:lang(ur) { text-decoration: none; }'; } if ( $options['editfont'] !== 'default' ) { // Double-check that $options['editfont'] consists of safe characters only @@ -72,6 +68,15 @@ class ResourceLoaderUserCSSPrefsModule extends ResourceLoaderModule { return array( 'all' => $style ); } + /** + * @param ResourceLoaderContext $context + * @return bool + */ + public function isKnownEmpty( ResourceLoaderContext $context ) { + $styles = $this->getStyles( $context ); + return isset( $styles['all'] ) && $styles['all'] === ''; + } + /** * @return string */ diff --git a/resources/src/mediawiki.skinning/elements.css b/resources/src/mediawiki.skinning/elements.css index d706d26143f..787208559fd 100644 --- a/resources/src/mediawiki.skinning/elements.css +++ b/resources/src/mediawiki.skinning/elements.css @@ -25,6 +25,14 @@ a:hover, a:focus { text-decoration: underline; } +a:lang(ar), +a:lang(kk-arab), +a:lang(mzn), +a:lang(ps), +a:lang(ur) { + text-decoration: none; +} + a.stub { color: #772233; }