This update standardises the terminology from 'Night Mode' to
'Dark Mode' across interface messages. This change aligns with common
terminology used in the industry.
Changes:
- `i18n/en.json` and `i18n/qqq.json`: Updated labels and descriptions
for UI elements from 'Night' to 'Dark' to reflect the new terminology.
This includes changes in labels like 'skin-night-mode-0-label' to
'Light' and 'skin-night-mode-1-label' to 'Dark'.
- `skin.json`: Updated descriptions in configuration settings to
mention 'Dark Mode' instead of 'Night Mode', ensuring that
documentation reflects current terminology.
Bug: T361157
Change-Id: I682a79fd7d9b37b4f908581e8fd28fd40f798c5c
Since Codex switched over to rem units, all differences between the
"legacy" and non-legacy builds of the library have disappeared.
This change removes references to the legacy version of the library
in preparation for the removal of these artifacts from Codex.
Bug: T360806
Change-Id: I158519eddc1738a5daeedb94eb7d2f692e74b84a
Changes spacing around icons in the user-links menus
so that the spacing is more consistently 8px.
Bug: T353987
Change-Id: I860ab858363f0535fd80e3a823cf90f91c2e9a86
If night-mode is disabled on a certain page via the
exclude list in skin.json, then the following class:
".skin-theme-clientpref-excluded" will be added to the HTML element.
In this scenario, the related client-preferences
menu options are visible, but disabled, and a notice
is rendered below the options informing users of this state.
Bug: T361158
Change-Id: I46d335d079a2d27c7a4122e23ac7e479c286b886
This has been confusing a few editors and breaks support with
Extension:DarkMode so let's remove for now.
Change-Id: I84a58b49f8f3d5af8765531bc14c43b42fe39a1d
h1 headings can be created in wikitext but are discouraged. They
nevertheless appear in the corpus.
https://www.mediawiki.org/wiki/Help_talk:Formatting#Level_1
Bug: T359881
Follows-Up: I15eaf43c6750c76363ec804eda9b8ca6ec4709c2
Change-Id: I1caa6809e1be14f87c791faac852610a522d1c5e
Add a 2px transparent bottom border to .mw-list-item.vector-tab-noicon
in order to prevent visible "jumps" when no item in the list is selected
and one is hovering items (thus giving them a 2px bottom border).
Bug: T361841
Change-Id: I5b6ccd6fc68bab399647c270cf5ef573034bb622
Skins should define a skin path to be relative to $wgStylePath,
not relative to $wgExtensionAssetsPath
Change-Id: Ie3adbd7adcbc1836803b8df7b657363e88061e60
Refine Feature Management in Vector Skin, in this patch we simplify the feature management criteria within the Vector skin by adjusting the requirements for the Constants::FEATURE_CLIENT_PREFS_PINNED feature. By removing the Constants::REQUIREMENT_LOGGED_IN constraint, we aim to enhance and unify the user experience by making certain preferences more accessible to users, regardless of their login status.
Changes:
- Updated FeatureManagerFactory.php by removing the Constants::REQUIREMENT_LOGGED_IN from the list of requirements for Constants::FEATURE_CLIENT_PREFS_PINNED. This modification aligns with our goal of making the Vector skin more user-friendly and accommodating to both logged-in and anonymous users, ensuring a broader range of users can benefit from customized features and settings.
Rationale:
The decision to remove the login requirement for accessing certain client preferences stems from an ongoing evaluation of user engagement and feedback, as detailed in Phabricator task T360099. This change is part of a series of improvements aimed at enhancing the accessibility and usability of the Vector skin, making it more adaptable to the diverse needs of our user base. By enabling more features for anonymous users, we anticipate an increase in engagement and a more personalized browsing experience for all users.
Bug: T360099
Change-Id: Ic477cd66df34c1caeb822d8d2162a7299cd648a0
* Using the new ConfigHelper, support disabling night mode on certain
pages via configuration options
* In addition, adds test coverage for this case and the query parameter
case (in a new integration test file as we now require accessing the
service container for request context)
* Finally, supply a default configuration in skin.json with all the
values set to null
For the easiest possible approach while we evaulate our general feature
management system, this logic is handled inside of getFeatureBodyClass
using the new shouldDisable general function. In the future, it may
make sense to break this out into its own requirement class, but for now
that feels premature
Bug: T359606
Change-Id: I3e7a4720ec3cc2afd9777e36f59aa56b682258f0
This class is being used in both vector and minerva, and we are
currently depending on it working for our night mode rollout, so let's
add some test coverage! Also fixed a small spacing issue in production
code that was bothering me lol
Note: these are not totally exhaustive - next steps would be to ensure
that the exclusions/inclusions work with arrays and not only single
elements, but hopefully this helps build some confidence ☺️
Change-Id: Iebea43eae6b1517fd778763db4f5db3b0fd9c30f
The classes:
- skin-night-mode-clientpref-0
- skin-night-mode-clientpref-1
- skin-night-mode-clientpref-2
is being replaced with
- skin-theme-clientpref-day
- skin-theme-clientpref-night
- skin-theme-clientpref-os
Other Changes:
- Change vector-night-mode preference to vector-theme
- Add skin-theme-os-label and other messages to skins.vector.clientPreferences
- Remove skin-night-mode-* messages from skins.vector.clientPreferences
Bug: T359983
Change-Id: I31eb086e623a97df9fbd004425559e05b0cae170