* 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
In preparation for a decision around how we share code, the generic code in
LimitedWidthContentrequirement is moved to ConfigHelper class. A fix
recently applied to Minerva (Ied3ed927202dd9356ebeb7e404230f571a1d910d)
is also incorporated into the new class.
The expectation is this code will be either:
1) be replaced by a submodule
OR
2) Used directly by Vector
after a decision tomorrow.
Bug: T359607
in I3967803bd75cf78d27c1a7c08e62730e46678a68 or removed
Change-Id: I04066acc86594e721e071e9096e1b12e1255b54b
Unblocks CI for Wikibase extension.
CI failed in I824acad352c366a35a243dac2086e3c5e98bc6eb
Bug: T350338
Change-Id: Id9926ff9a60cb0cac56a612a792d5ffde55c4c63
In accordance with the original design, reorder the client prefs so that
night mode is above limited width
Visual change for users who have access to night mode
Bug: T357707
Change-Id: I21a976655734a2accc57d541bacba391961070a8
- Loaded new skins.vector.search.codex.scripts module in skin.json, with only the CdxTypeaheadSearch component with codexScriptOnly flag set to true.
- Included skins.vector.search.codex.scripts in the script loading configuration for Vector22 within skin.json.
- Turned off the "interface-message-box" feature within Vector22's skins.vector.styles configuration in skin.json, as Codex now supplies these styles.
- Fix the style selector to add `.cdx-button` to `.vector-limited-width-toggle` in BottomDock.less since using the codex style
- Substituted "codex-search-styles" with "skins.vector.search.codex.styles" in the existing configuration.
- Ensured the availability of skins.vector.search.codex.scripts module for use, marking it in the list of modules in skin.js.
- Modified App.vue to utilize skins.vector.search.codex.scripts instead of @wikimedia/codex-search.
- Update App.test.js.snap to the latest output form
- Update bundlesize.config.json with newest values
Bug: T356677
Change-Id: I7fc223db01171efe6656792530d4b625be4c8edc
Some feature requirements needs access to the request user or title.
Currently the context is given in the ServiceWiring callback,
access to RequestContext::getMain() should be avoided during service
wiring (T218555).
Create a factory to hold the code from the service wiring and call the
factory with the request context from the skin to get a feature manager.
Bug: T359665
Change-Id: I57515ec02ed454620f729a109d0ace43b447b6ce
This was never implemented and will likely cause avoidable
confusion if allowed to persist in the codebase given our work on T359606
Change-Id: Icf36108f24198358e53bf04942751fe3306bc726
According to a Google contact, given we set viewport to 1000px
for mobile devices viewing Vector get a tap delay.
The solution was suggested in https://developer.chrome.com/blog/300ms-tap-delay-gone-away?hl=en
and Peter has confirmed helps improve performance.
A supports query is added to limit this rule to only browsers where
it applies.
Bug: T358380
Change-Id: Ifd7d8951e06e3ba0faaed354492d23e6e0bc8f69
- Added Code sharing between Vector and Minerva Skins ADR
- Updated the title of an old ADR to "Publish client preferences" it was wrong before
Bug: T357077
Change-Id: Ied0d4f008969b6ef0adac7f22bb374843519b408