From: Trevor Parscal Date: Sat, 4 Sep 2010 10:53:57 +0000 (+0000) Subject: Better solution for r72367, this allows file modules to always be written in ltr... X-Git-Tag: 1.31.0-rc.0~35159 X-Git-Url: http://git.cyclocoop.org/%7B%24www_url%7Dadmin/password.php?a=commitdiff_plain;h=cad68eb943d7667060ed555295f74547aae2f6c0;p=lhc%2Fweb%2Fwiklou.git Better solution for r72367, this allows file modules to always be written in ltr, while site modules are written in whatever $wgContLang is. --- diff --git a/includes/ResourceLoader.php b/includes/ResourceLoader.php index 4b208ce30c..f79114af8b 100644 --- a/includes/ResourceLoader.php +++ b/includes/ResourceLoader.php @@ -294,7 +294,7 @@ class ResourceLoader { $context->shouldIncludeStyles() && ( $styles .= self::$modules[$name]->getStyle( $context ) ) !== '' ) { - if ( $context->getFlip() ) { + if ( self::$modules[$name]->getFlip( $context ) ) { $styles = self::filter( 'flip-css', $styles ); } $styles = $context->getDebug() ? $styles : self::filter( 'minify-css', $styles ); diff --git a/includes/ResourceLoaderContext.php b/includes/ResourceLoaderContext.php index 5518023a47..c6a277fc26 100644 --- a/includes/ResourceLoaderContext.php +++ b/includes/ResourceLoaderContext.php @@ -31,7 +31,6 @@ class ResourceLoaderContext { protected $modules; protected $language; protected $direction; - protected $flip; protected $skin; protected $debug; protected $only; @@ -40,7 +39,7 @@ class ResourceLoaderContext { /* Methods */ public function __construct( WebRequest $request, $server ) { - global $wgUser, $wgLang, $wgContLang, $wgDefaultSkin; + global $wgUser, $wgLang, $wgDefaultSkin; $this->request = $request; $this->server = $server; @@ -61,8 +60,6 @@ class ResourceLoaderContext { if ( !$this->skin ) { $this->skin = $wgDefaultSkin; } - // Evaluate flip - $this->flip = $wgContLang->getDir() !== $this->direction; } public function getRequest() { @@ -85,10 +82,6 @@ class ResourceLoaderContext { return $this->direction; } - public function getFlip() { - return $this->flip; - } - public function getSkin() { return $this->skin; } diff --git a/includes/ResourceLoaderModule.php b/includes/ResourceLoaderModule.php index 874c01773d..b0b509d781 100644 --- a/includes/ResourceLoaderModule.php +++ b/includes/ResourceLoaderModule.php @@ -69,6 +69,15 @@ abstract class ResourceLoaderModule { global $wgResourceLoaderServerMaxage; return $wgResourceLoaderServerMaxage; } + + /** + * Get whether CSS for this module should be flipped + */ + public function getFlip( $context ) { + return $context->getDirection() === 'rtl'; + } + + /* Abstract Methods */ /** * Get all JS for this module for a given language and skin. @@ -423,7 +432,7 @@ class ResourceLoaderFileModule extends ResourceLoaderModule { $this->modifiedTime[$context->getHash()] = max( $filesMtime, $msgBlobMtime ); return $this->modifiedTime[$context->getHash()]; } - + /* Protected Members */ /** @@ -689,6 +698,10 @@ class ResourceLoaderStartUpModule extends ResourceLoaderModule { } public function getStyle( ResourceLoaderContext $context ) { return ''; } + public function getFlip( $context ) { + global $wgContLang; + return $wgContLang->getDir() !== $context->getDirection(); + } public function getMessages() { return array(); } public function getLoaderScript() { return ''; } public function getDependencies() { return array(); }