Page MenuHomePhabricator

Vector and Minerva should share variables (skin variants)
Closed, ResolvedPublicFeature

Description

Vector and Minerva now have identical skin variables definitions that need to be manually synced.
They live here:

These colors are "Wikimedia-branded". The concern is this would make Minerva and Vector look Wikimedia branded when installed on 3rd parties. By default we want these to be non-Wikimedia colors. What we want is to be able to conditionally toggle on a Wikimedia theme similar to how OOUI has themes. This seems to overlap a little with the goal of T122924.

Going forward, we would like to define a Wikimedia theme that both Minerva and Vector can consume optionally.
One solution would be to put this shared variables list in core, but this has the negative effect of making all MediaWiki instances look like Wikimedia's brand .

I wrote some notes here https://www.mediawiki.org/wiki/User:Jdlrobson/Themes_in_MediaWiki

One idea is too make it possible to set themes on skins which would allow us to define themes for dark mode for example which is a longstanding request (T26070).

Event Timeline

Change 815826 had a related patch set uploaded (by Jdlrobson; author: Jdlrobson):

[mediawiki/core@master] [WIP] Change MediaWiki skin defaults

https://gerrit.wikimedia.org/r/815826

Change 815826 abandoned by Jdlrobson:

[mediawiki/core@master] [WIP] Change MediaWiki skin defaults

Reason:

to be continued..

https://gerrit.wikimedia.org/r/815826

Change 821309 had a related patch set uploaded (by Jdlrobson; author: Jdlrobson):

[mediawiki/core@master] [POC] Skin: Skin themes

https://gerrit.wikimedia.org/r/821309

Jdlrobson renamed this task from Vector and Minerva should share variables (skin theming) to Vector and Minerva should share variables (skin variants).Aug 30 2022, 9:10 PM

Change 821309 abandoned by Jdlrobson:

[mediawiki/core@master] [POC] Skin: Skin themes

Reason:

https://gerrit.wikimedia.org/r/821309

From the above abandoned Gerrit patch (@Volker_E):

High level comment after short conversation with Jon about this:

  1. We would want to aim for/limit the functionality of those for basic appearance values, things like page composition, interaction sizing and layout should continue to come from the skins.
  2. We should aim to avoid calling this concept 'theme'. Our environment is already complex enough in that area, that such a label would make people's heads spin.

It might be better to continue with “variables” or “variants”.

We already a globally importable mediawiki.skin.defaults.less that is named such that it doesn't clash or force anything.

I imagine a similar mediawiki.skin.wmui.less or mediawiki.skin.wikimedia-design.less could similarly exist as something that can be freely imported by skins, whom can either have it as the sole statement there or possibly add/override more of their own if they wish.

@Volker_E how does this relate to the work you are doing right now?

Jdlrobson updated the task description. (Show Details)
Jdlrobson claimed this task.

Declining this. I'm satisified that through Codex adoption (specifically design tokens) we are now sharing the right things.