addMeta( 'viewport', 'width=device-width, initial-scale=1' ); // Theme color $out->addMeta( 'theme-color', $this->getConfig()->get( 'CitizenThemeColor' ) ); // Preconnect origin if ( $this->getConfig()->get( 'CitizenEnablePreconnect' ) ) { $out->addLink( [ 'rel' => 'preconnect', 'href' => $this->getConfig()->get( 'CitizenPreconnectOrigin' ) ] ); } // Generate manifest if ( $this->getConfig()->get( 'CitizenEnableManifest' ) ) { $out->addLink( [ 'rel' => 'manifest', 'href' => wfExpandUrl( wfAppendQuery( wfScript( 'api' ), [ 'action' => 'webapp-manifest' ] ), PROTO_RELATIVE ) ] ); } $out->addModuleStyles( [ 'mediawiki.skinning.content.externallinks', 'skins.citizen', 'skins.citizen.icons', 'skins.citizen.icons.ca', 'skins.citizen.icons.p', 'skins.citizen.icons.toc', 'skins.citizen.icons.es', 'skins.citizen.icons.n', 'skins.citizen.icons.t', 'skins.citizen.icons.pt', 'skins.citizen.icons.footer', 'skins.citizen.icons.badges', 'skins.citizen.icons.search' ] ); $out->addModules( [ 'skins.citizen.js', 'skins.citizen.search' ] ); } /** * @param $out OutputPage */ function setupSkinUserCss( OutputPage $out ) { parent::setupSkinUserCss( $out ); } }