X-Git-Url: https://git.heureux-cyclage.org/?p=lhc%2Fweb%2Fwiklou.git;a=blobdiff_plain;f=includes%2Fresourceloader%2FResourceLoaderSkinModule.php;h=ca6e59f2bf1bd81397bec61bff1967b54cf6994a;hp=5740925d2a4585dbd564b827993b177bbdd108e3;hb=12601ff7d2796752404bfb331fccc41083d31f9f;hpb=967ead16680077f4734ba668cd4104c789a3b9ff diff --git a/includes/resourceloader/ResourceLoaderSkinModule.php b/includes/resourceloader/ResourceLoaderSkinModule.php index 5740925d2a..ca6e59f2bf 100644 --- a/includes/resourceloader/ResourceLoaderSkinModule.php +++ b/includes/resourceloader/ResourceLoaderSkinModule.php @@ -22,6 +22,10 @@ */ 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