Sysadmin:Jefreshed Skin: A Customization of Refreshed
)
Contents
Jefreshed Skin
This page describes the Jefreshed skin that we are using, the reasons for creating it, the implications of using it, and information on how to use it.
The problem
Using the special page Common.css presents a very inefficient workflow when making changes in dev and moving those changes to production. And using an external CSS file does not solve the problem of flashing described below.
Making changes to the skin using MediaWiki:Common.css and /jfa/code/jfa.css was having side effects because of protected user pages flashing blue, the original dominant color of Refreshed. After moving the CSS from Common.css to /jfa/code/jfa.css, it still had to be in Common.css to avoid flashing blue because of the timing of browser rendering. It was either that or set $wgAllowSiteCSSOnRestrictedPages to true, compromising security. Even then, there was still some flashing. The flashing is caused by the skin CSS being used to render the page before the overriding CSS kicked in.
Also, having our mods are fully incorporated into the skin rather than overwriting parts of the skin will provide new opportunities for customization and more efficient rendering in the browser.
The Solution
A new skin named Jefreshed was created from Refreshed
- The refreshed skin was copied and global changes were made to rename the files.
- "Refreshed" was renamed to "Jefreshed."
- "refreshed" was renamed to "refreshed."
Implications for Updates
If Refreshed is changed in the future to be compatible with a new release of MediaWiki, we will need to do a diff comparing the old version of Refreshed with the new version of Refreshed, and incorporate any required or desired changes in Jefreshed. The Refreshed skin directory was renamed Refreshed-original so that if a new version is released and uploaded, it won't overwrite the original, making the diff mentioned above difficult or maybe impossible if no versions of the original can be found.
Implications for the Logo
Jefreshed does not use the $wgLogo setting in LocalSettings.php, as a carryover from Refreshed.
Use the following special pages
- MediaWiki:Jefreshed-this-wiki-wordmark: Normal logo, the content is the image logo URL.
- MediaWiki:Jefreshed-this-wiki-mobile-logo: The logo displayed on the mobile, the content is the image logo URL.
For optimal display on Refreshed's mobile skin, you should consider either using downscaled images or SVG images so that the logo does not display as blurry on "retina" (high PPI) mobile device screens. See https://www.mediawiki.org/wiki/Skin:Refreshed#Logo/Wordmark
How CSS from Common.js was incorporated
The file jfacustom.css was created within the Jefreshed skin where the other CSS files reside:
skins/Jefreshed/jefreshed/styles/screen
Custom CSS was moved from the front-end page MediaWiki:Common.css into this file. The goal is to eventually integrate the CSS in jfacustom.css into the original skin files.
To get this file to load, it was included in skins.json to be loaded by the MediaWiki resource loader:
"jefreshed/styles/screen/jfacustom.css": "media": "(max-width: 3001px)"
The max-width media query was specified so that jfacustom.css CSS would be loaded after all the other CSS files. The max-width value is such the CSS will apply to all non-ridiculous screen sizes.