Custom Vector theme/skin for GolemWiki, our instance of MediaWiki
Go to file
Nicholas Ray 092a2957af Implement Page, Workspace, Content, and Article Toolbar Containers
This patch closely follows the desired guidelines/desired
styles Alex Hollender has put forth in his prototype, but uses
multiple containers to achieve this look since our DOM order/structure
is different than the DOM structure in the prototype. The following
containers are used, but unlike his prototype, they are sometimes used
more than once:

* Page Container: Contains every other container and limits the overall
max-width of the white part of the page.

* Workspace Container: Contains the sidebar and content container. The
sidebar is displaced ~30 pixels to the start (left) of the workspace
container at all times.

* Content Container: Contains the content. The max-width of this changes
depending on whether you are on a special page/history page vs. other
pages.

* Article Toolbar Container: Contains the article toolbar. The max-width
of this is always the same as the max-width of the article content as we
don't want the toolbar to move when going from the article page to the
history/special page.

Changes to be aware:

* To test locally, `$wgVectorLayoutMaxWidth = true;`. This design is
temporarily feature flagged and defaults to being "off".

* Note that layout-max-width.less is a temporary file made to meet the
feature flag requirement of T246420 (intended to derisk the deployment).
After the deploy, we should merge most if not all of the rules into
layout.less where the max-width design will become the default.

* Per Jon's code review comment, I have relaxed the indenting of
skin.mustache to make the diff easier to reason about. If desired, the
correct indenting can be achieved in a (much less risky) follow-up
commit.

Bug: T246420
Bug: T153043
Change-Id: Ie49f629bc705850c6996164a516957476c034048
2020-07-07 18:34:38 -06:00
.phan Upgrade to newer phan 2019-03-20 19:37:59 -07:00
.storybook Add storybook to Vector 2020-01-31 16:59:15 +08:00
dev-scripts [dev][Storybook] move to start script; report errors not status 2020-05-12 13:42:01 -07:00
i18n Localisation updates from https://translatewiki.net. 2020-07-07 09:33:06 +02:00
includes Implement Page, Workspace, Content, and Article Toolbar Containers 2020-07-07 18:34:38 -06:00
resources Implement Page, Workspace, Content, and Article Toolbar Containers 2020-07-07 18:34:38 -06:00
screenshots Add skin screenshot for the installer 2017-08-11 15:37:34 -04:00
skinStyles Replace deprecated `@colorFieldBorder` variable and use others 2020-04-28 01:42:09 +00:00
stories build: Update devDependencies 2020-07-01 14:43:39 -07:00
tests build: Update devDependencies 2020-07-01 14:43:39 -07:00
.eslintignore Replace Grunt tasks with npm scripts in package.json 2020-02-27 16:32:12 +01:00
.eslintrc.json [dev] [JS] Move JavaScript to package modules 2020-04-10 09:39:25 -06:00
.gitignore Drop wgVectorResponsive support from modern Vector 2020-07-02 22:08:37 +03:00
.gitreview Use track=1 instead of defaultbranch=master in .gitreview 2016-10-24 17:30:32 -07:00
.phpcs.xml Add method scope visibility 2018-11-01 21:01:32 +01:00
.stylelintignore Replace Grunt tasks with npm scripts in package.json 2020-02-27 16:32:12 +01:00
.stylelintrc.json build: Bump devDependencies to latest 2018-02-26 10:29:23 -08:00
.svgo.yml build: Add 'svgo', SVG minifier script and unify SVGO rules 2020-03-07 19:47:58 -08:00
CODE_OF_CONDUCT.md build: Updating mediawiki/mediawiki-codesniffer to 22.0.0 2018-09-04 01:45:34 +00:00
COPYING Use the plain-text GPL and fix 'license-name' to match SPDX conventions 2015-01-29 17:04:29 +01:00
Doxyfile docs: Generate documentation with Doxygen 2020-02-24 16:49:38 +00:00
README.md [doc] Add link in readme to hooks.txt 2020-04-28 09:29:52 -06:00
bundlesize.config.json Implement Page, Workspace, Content, and Article Toolbar Containers 2020-07-07 18:34:38 -06:00
composer.json build: Updating npm dependencies 2020-06-12 05:51:50 +00:00
hooks.txt docs: Remove overqualified element-id combination selectors 2020-03-23 13:25:45 -07:00
jsdoc.json [feature] add menu button to toggle panel visibility 2020-05-28 02:14:13 +00:00
package-lock.json build: Update devDependencies 2020-07-01 14:43:39 -07:00
package.json build: Update devDependencies 2020-07-01 14:43:39 -07:00
skin.json Implement Page, Workspace, Content, and Article Toolbar Containers 2020-07-07 18:34:38 -06:00
tsconfig.json [JavaScript] Validate types 2020-03-16 09:10:08 -06:00
variables.less Merge "[less] Normalize focus styles in Blink based browsers" 2020-06-15 22:44:28 +00:00

README.md

Vector Skin

Installation

See https://www.mediawiki.org/wiki/Skin:Vector.

Configuration options

See skin.json.

Development

Coding conventions

We strive for compliance with MediaWiki conventions:

https://www.mediawiki.org/wiki/Manual:Coding_conventions

Additions and deviations from those conventions that are more tailored to this project are noted at:

https://www.mediawiki.org/wiki/Reading/Web/Coding_conventions

URL query parameters

Skin preferences

Vector defines skin-specific user preferences. These are exposed on Special:Preferences when the VectorShowSkinPreferences configuration is enabled. The user's preference state for skin preferences is used for skin previews and any other operation unless specified otherwise.

Version

Vector defines a "version" preference to enable users who prefer the December 2019 version of Vector to continue to do so without any visible changes. This version is called "Legacy Vector." The related preference defaults are configurable via the configurations prefixed with VectorDefaultSkinVersion. Version preference and configuration may be overridden by the useskinversion URL query parameter.

Hooks

See hooks.txt.