Merge "Rename autonym for 'no' from 'norsk bokmål' to 'norsk'"
[lhc/web/wiklou.git] / includes / resourceloader / ResourceLoaderSkinModule.php
index 5740925..ca6e59f 100644 (file)
  */
 
 class ResourceLoaderSkinModule extends ResourceLoaderFileModule {
+       /**
+        * All skins are assumed to be compatible with mobile
+        */
+       public $targets = [ 'desktop', 'mobile' ];
 
        /**
         * @param ResourceLoaderContext $context
@@ -30,6 +34,7 @@ class ResourceLoaderSkinModule extends ResourceLoaderFileModule {
        public function getStyles( ResourceLoaderContext $context ) {
                $logo = $this->getLogo( $this->getConfig() );
                $styles = parent::getStyles( $context );
+               $this->normalizeStyles( $styles );
 
                $default = !is_array( $logo ) ? $logo : $logo['1x'];
                $styles['all'][] = '.mw-wiki-logo { background-image: ' .
@@ -62,6 +67,22 @@ class ResourceLoaderSkinModule extends ResourceLoaderFileModule {
                return $styles;
        }
 
+       /**
+        * Ensure all media keys use array values.
+        *
+        * Normalises arrays returned by the ResourceLoaderFileModule::getStyles() method.
+        *
+        * @param array &$styles Associative array, keys are strings (media queries),
+        *   values are strings or arrays
+        */
+       private function normalizeStyles( &$styles ) {
+               foreach ( $styles as $key => $val ) {
+                       if ( !is_array( $val ) ) {
+                               $styles[$key] = [ $val ];
+                       }
+               }
+       }
+
        /**
         * @param Config $conf
         * @return string|array Single url if no variants are defined