Commit graph

2727 commits

Author SHA1 Message Date
Jdlrobson 0b6636d587 Revert "Apply typography rules to .mw-body-content elements outside .vector-body"
This reverts commit da832cc53d.

Reason for revert: Bartosz reports this made
things worse, so probably best to go with
the VisualEditor selector approach.

Change-Id: Ifcb18c7a388986df44424f9a58be35314c3d3e2c
2021-11-10 15:07:19 +00:00
jenkins-bot e95e48ce51 Merge "Add scroll event + init A/B test logging to sticky header, AB js" 2021-11-09 23:26:17 +00:00
Clare Ming 457dcfc472 Add scroll event + init A/B test logging to sticky header, AB js
- Pull IntersectionObserver into new file to share observer with different callbacks:
  - Wrap show/hide functionality of sticky header in conditionals based on user test group or by default.
  - Fire hooks for scroll event tracking in WME.
- Add new js for A/B test functions and variables:
  - Fire hook to send data for A/B test initialization.
- Update main js to include scrollObserver, A/B test init functionality.
- Add A/B test config.
- Update ResourceLoader package dependencies for sticky header.
- Though not a strict dependency, see I42e3e7c2084c1e88363d5d1662630ed23a28c4d2 in WME repo which uses these hooks to log scroll events.
- This patch includes changes from I56f40e706f8706fde1c0891a0561dd32c5e02bfc which were consolidated here for simplicity and ease of review - related to T292587 which calls for logging an init event for bucketing of users during A/B testing.

Bug: T292586
Change-Id: If6446e1e84cea3649905808c4f0e9f6862255fa3
2021-11-09 15:00:25 -07:00
jenkins-bot e3b5356aab Merge "Apply typography rules to .mw-body-content elements outside .vector-body" 2021-11-09 21:38:11 +00:00
jenkins-bot 4efa75aa7f Merge "Fix specificity of widespread .external selector" 2021-11-09 17:14:03 +00:00
jdlrobson da832cc53d Apply typography rules to .mw-body-content elements outside .vector-body
Bug: T287733
Change-Id: Ib737f215104b2aa234bf694e734de12fccff2fc3
2021-11-09 06:32:01 +00:00
Translation updater bot 63af267555 Localisation updates from https://translatewiki.net.
Change-Id: Ic5cf468df7639856dbcc7450f32db46e47519e7b
2021-11-09 07:31:41 +01:00
Volker E 2ba2af97cf Fix specificity of widespread .external selector
Returning to `a.external` over only `.external` as it's used widely
within MediaWiki and skins and it needs to kick in in appropriate
places.
`.external` is besides one false positive only for anchor elements,
nonetheless more specific is simpler and more fail-safe than the
other way round.

Change-Id: I3e2fec26d1f835b11f9a66fdf4ba7faeca12d9d2
2021-11-08 21:58:57 -08:00
Translation updater bot a20bf464b3 Localisation updates from https://translatewiki.net.
Change-Id: Iaa8925f1fa698a237b90b5e0fbf493809129c1cf
2021-11-08 08:19:02 +01:00
Roan Kattouw 5dee570cb2 search: Prepare for Vue 3 migration
Port the initialization code for the Vue search to use Vue.createMwApp()
instead of new Vue( ... ). The former mimicks Vue 3's API for mounting
components.

Without this change, this code breaks in Vue 3 (even in compatibility
mode) because the compat support for new Vue(...) is imperfect. By the
time renderFn is called, the searchForm container has already been
emptied by Vue's internal mounting code.

Instead, inspect searchForm and generate the prop list before mounting,
then pass the props to createMwApp() and mount the component.

Bug: T294476
Depends-On: I1fcdcf7bf87f5af2deb9763a231f2c360ea45b23
Change-Id: I5b6e66051d97e75f8f03b8258894daba22525797
2021-11-05 15:53:34 -07:00
jenkins-bot 04ff34bd0c Merge "Initialize the skins.vector.es6 module before the skins.vector.js module" 2021-11-04 18:11:29 +00:00
Translation updater bot ac481991e6 Localisation updates from https://translatewiki.net.
Change-Id: I1a8224d993adff5b85afd5b071eba88ab621fe06
2021-11-04 10:09:25 +01:00
jenkins-bot 2d501e987c Merge "Add comment to dropdownMenus.js regarding the CHECKBOX_HACK_BUTTON_SELECTOR" 2021-11-03 17:47:00 +00:00
Nicholas Ray c741759cab Initialize the skins.vector.es6 module before the skins.vector.js module
stickyHeader.js, a file in the "skins.vector.es6" module, clones the
user menu. Because of this, it must initialize before dropdownMenu.js, a
file in the "skins.vector.js" module, in order for dropdownMenu.js to
bind the correct checkboxHack event listeners to the user menu in the
sticky header.

Therefore, change the es6 module to export its main method. The
skins.vector.js module can then use mw.loader.using to ensure the
skins.vector.es6 module initialization happens first in browsers that
support es6. Browsers that don't support es6 will continue to initialize
the skins.vector.js module.

Bug: T291096
Change-Id: I1bb6f2da9703ed2679eacfdb42b9818efe614ab9
2021-11-03 11:03:18 -06:00
Translation updater bot 89b98d68b4 Localisation updates from https://translatewiki.net.
Change-Id: Ie14f5eba012ac013cff825fdc123085105e5c824
2021-11-03 08:22:59 +01:00
Nicholas Ray 7f58c88934 Add comment to dropdownMenus.js regarding the CHECKBOX_HACK_BUTTON_SELECTOR
Per request [1], a clarifying comment was added explaining that our
checkbox hack implementation has drifted from the core's recommendation.

[1] https://gerrit.wikimedia.org/r/c/mediawiki/skins/Vector/+/732732/2/resources/skins.vector.js/dropdownMenus.js#7

Bug: T291096
Change-Id: I3a5bc9d463bace11185affbb21320d86fc1c5d99
2021-11-02 17:58:52 -06:00
Translation updater bot ea0f0a26fd Localisation updates from https://translatewiki.net.
Change-Id: Ib77428aa8c7473ecbed0fe6d43b3b127b8f2cbe1
2021-11-01 09:36:48 +01:00
Translation updater bot 43f6b74b6b Localisation updates from https://translatewiki.net.
Change-Id: I83035de7b29bc9c4ca49a2f015b1aea33f987094
2021-10-29 08:24:04 +02:00
Translation updater bot 9e81c8434e Localisation updates from https://translatewiki.net.
Change-Id: If87d6cf38a3f73b5830de352be80096865051748
2021-10-28 08:31:48 +02:00
jdlrobson 768a07ec6c Add sticky header edit feature flag
Can be disabled via &vectorstickyheaderedit=0 or configuration
change.

This will allow us to fine tune the edit features without blocking
deploying the existing feature.

Bug: T294383
Change-Id: Ic282ea4f2ff0108eeaa154c8a77e4e5fd30daeae
2021-10-26 21:59:29 +00:00
jenkins-bot 34d77d5e41 Merge "Sticky header edit icons trigger via JavaScript" 2021-10-26 17:32:50 +00:00
jenkins-bot 5641a38edf Merge "Fix title getting cut off in sticky header." 2021-10-26 15:51:01 +00:00
Translation updater bot 85d05d7a9a Localisation updates from https://translatewiki.net.
Change-Id: I764bc19247ebf3f036714def5170096ce8d0a6ce
2021-10-26 08:20:19 +02:00
Clare Ming 741d59df06 Fix title getting cut off in sticky header.
- Add padding to title class selector.

Bug: T289814
Change-Id: Iab167414d10ce256be8e966f115ae164c1bd3331
2021-10-25 20:51:43 -06:00
jenkins-bot 68aa856916 Merge "Remove duplicate vector-menu-dropdown class" 2021-10-25 22:59:52 +00:00
jdlrobson 0663087dd5 Sticky header edit icons trigger via JavaScript
Current expected behaviour: the editor experience will
load and the user will be thrown to the top of the page.

Bug: T293158
Change-Id: I3585616c2244a6b91ef5f160beb1cf51af3599aa
2021-10-25 22:35:13 +00:00
jenkins-bot c822029e38 Merge "Combine return paths in getLanguagesCached" 2021-10-25 21:52:02 +00:00
Nicholas Ray 24dbcd1a1a Remove duplicate vector-menu-dropdown class
This class is already being added via SkinVector::decoratePortletClass
so the one in the Menu template can be removed.

Bug: T291096
Change-Id: Icb9fa7a1e583ad4ef0138c5bd069aa68598c9b6e
2021-10-25 09:55:42 -06:00
Translation updater bot 028f3e7316 Localisation updates from https://translatewiki.net.
Change-Id: I099186b3472e8bf636d7b9710492c06250a50a84
2021-10-25 08:55:49 +02:00
Fomafix 574bbfd549 Combine return paths in getLanguagesCached
Also use single quotes instead of double quotes and fix typos.

Change-Id: Ibfd855f55f38ea824d38ad858b654d8229838cd1
2021-10-23 12:55:37 +00:00
Translation updater bot 4768a3695d Localisation updates from https://translatewiki.net.
Change-Id: I49207f7ba86f7fea8e3f4da0c5a0140685238820
2021-10-22 08:16:43 +02:00
jdlrobson ca0401789d ES6-ify sticky header code
- Can now use const/let
- No need for feature detection for things like fetch and closest
as we can assume they exist if ES6 support is available

Change-Id: I85b01add13fd74e1514119498815403e42a09af0
2021-10-21 23:44:30 +00:00
jdlrobson b8122cc40b Separate code from ES6 browsers from ES5 code
This will allow us to write ES6 code for the new features which
is limited to those browsers.

For browsers that do not support ES6, the code will not execute
because of the "es6" flag. Doing this will help us avoid issues
like T293402

Change-Id: Iffb7098cb22395e33b87352fb4f08516f6f25e6f
2021-10-21 15:55:04 -07:00
jenkins-bot 62347f0a74 Merge "Make dropdown menus toggle with enter key" 2021-10-21 20:22:41 +00:00
Nicholas Ray 876d3ddf39 Make dropdown menus toggle with enter key
Bug: T291096
Change-Id: Ia5d1a33aa04dab09f1454ade4816fdb9d48f1eca
2021-10-21 09:59:58 -06:00
jdlrobson c16fa80006 Sticky header: Add user page link to user menu in sticky header
Bug: T292557
Change-Id: Ia72c214ef6384dfeae21556aa4007eb6075f0057
2021-10-21 15:15:51 +00:00
Translation updater bot 1c3dde072b Localisation updates from https://translatewiki.net.
Change-Id: I1e8beed945466dc89ec154e885ef79209287bb8f
2021-10-21 08:24:30 +02:00
Translation updater bot b87a979d26 Localisation updates from https://translatewiki.net.
Change-Id: I7a72e3709125d3db4223bc33eefaf1d84e37a120
2021-10-20 08:40:09 +02:00
jdlrobson ae28c427d6 Vector should be notified by addPortletLink to collapsible where needed
Bug: T139830
Change-Id: Ibf17a3df7f9409a02f1a316d5da16b32fabcc5a2
2021-10-19 23:24:28 +00:00
jenkins-bot b1dd172a5f Merge "[a11y] Add title attributes to logout, talk and history and DRY up code." 2021-10-19 16:36:58 +00:00
jdlrobson 358d81ddce [a11y] Add title attributes to logout, talk and history and DRY up code.
* Addresses feedback in:
** T289816#7440605
** T283505#7440585
Change-Id: I98abdab8c3eb20567af527e6a8bf75faa5670d6b
2021-10-19 08:47:00 -07:00
jenkins-bot 7b63f7c751 Merge "Define documentable types in eslintrc instead of inline" 2021-10-18 21:14:26 +00:00
Clare Ming fa15608f3e Fix article title in sticky header template.
Bug: T289814
Change-Id: Ie12097f722053eb9efb557a1e9668d26104a7091
2021-10-18 14:00:47 -06:00
Ed Sanders 90b5ff5149 Define documentable types in eslintrc instead of inline
Change-Id: I80f0557a6355208d2694f3776cce2ee858573a9c
2021-10-18 18:08:32 +00:00
bwang a1b523a9d5 Avoid calling forEach on searchbox NodeList for older browsers
Bug: T293402
Change-Id: Ic2d10ca9c664c284fc9b5433b5ff1cc32d98c960
2021-10-18 17:56:05 +00:00
Translation updater bot ea58308a48 Localisation updates from https://translatewiki.net.
Change-Id: I68d3a0b8a1c1ed12ef53addf110cdeb5e917f663
2021-10-18 15:24:59 +02:00
jenkins-bot 041496585b Merge "Revert "Use searchFooterText slot in typeahead search component"" 2021-10-13 15:01:39 +00:00
Bernard Wang 7575cf97a5 Revert "Use searchFooterText slot in typeahead search component"
This reverts commit b7728ddda5.

Reason for revert: Depends on WVUI release

Change-Id: If97551a8609433b569fbc88800a7bf9ffc137587
2021-10-13 14:34:08 +00:00
Clare Ming 6c009f87c0 Make edit icons in sticky header untabbable for VO/screen readers.
Bug: T290201
Change-Id: I5248db6ab29b1a9a995a5053d84e63cfb7b9fd93
2021-10-12 16:02:52 -06:00
jenkins-bot 529ccd1a86 Merge "Use searchFooterText slot in typeahead search component" 2021-10-12 21:34:45 +00:00