Merge "Add $revision to TitleMoveCompleting for completeness"
[lhc/web/wiklou.git] / includes / resourceloader / ResourceLoaderSkinModule.php
index 9835932..e1df6d9 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * Resource loader module for skin stylesheets.
+ * ResourceLoader module for skin stylesheets.
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -31,11 +31,33 @@ class ResourceLoaderSkinModule extends ResourceLoaderFileModule {
         */
        public function getStyles( ResourceLoaderContext $context ) {
                $logo = $this->getConfig()->get( 'Logo' );
+               $logoHD = $this->getConfig()->get( 'LogoHD' );
                $styles = parent::getStyles( $context );
                $styles['all'][] = '.mw-wiki-logo { background-image: ' .
                        CSSMin::buildUrlValue( $logo ) .
                        '; }';
-
+               if ( $logoHD ) {
+                       if ( isset( $logoHD['1.5x'] ) ) {
+                               $styles[
+                                       '(-webkit-min-device-pixel-ratio: 1.5), ' .
+                                       '(min--moz-device-pixel-ratio: 1.5), ' .
+                                       '(min-resolution: 1.5dppx), ' .
+                                       '(min-resolution: 144dpi)'
+                               ][] = '.mw-wiki-logo { background-image: ' .
+                               CSSMin::buildUrlValue( $logoHD['1.5x'] ) . ';' .
+                               'background-size: 135px auto; }';
+                       }
+                       if ( isset( $logoHD['2x'] ) ) {
+                               $styles[
+                                       '(-webkit-min-device-pixel-ratio: 2), ' .
+                                       '(min--moz-device-pixel-ratio: 2),' .
+                                       '(min-resolution: 2dppx), ' .
+                                       '(min-resolution: 192dpi)'
+                               ][] = '.mw-wiki-logo { background-image: ' .
+                               CSSMin::buildUrlValue( $logoHD['2x'] ) . ';' .
+                               'background-size: 135px auto; }';
+                       }
+               }
                return $styles;
        }
 
@@ -49,21 +71,13 @@ class ResourceLoaderSkinModule extends ResourceLoaderFileModule {
                return false;
        }
 
-       /**
-        * @param $context ResourceLoaderContext
-        * @return int|mixed
-        */
-       public function getModifiedTime( ResourceLoaderContext $context ) {
-               $parentMTime = parent::getModifiedTime( $context );
-               return max( $parentMTime, $this->getHashMtime( $context ) );
-       }
-
        /**
         * @param $context ResourceLoaderContext
         * @return string: Hash
         */
        public function getModifiedHash( ResourceLoaderContext $context ) {
                $logo = $this->getConfig()->get( 'Logo' );
-               return md5( parent::getModifiedHash( $context ) . $logo );
+               $logoHD = $this->getConfig()->get( 'LogoHD' );
+               return md5( parent::getModifiedHash( $context ) . $logo . json_encode( $logoHD ) );
        }
 }