Commit graph

4122 commits

Author SHA1 Message Date
Moh'd Khier Abualruz cd95f34687 Replace codex-search-styles with CodexModule
Enhance MinervaNeue Skin with Codex Integration and Style Refinements. This update to the MinervaNeue skin introduces enhancements aimed at integrating with Codex UI components and the optimisation of skin-specific styles. These changes are in direct response to the objectives set forth in Phabricator task T356678, focusing on modernising the skin's aesthetics and functionality.

Changes:
- Enhanced skin.json to include new 'scripts' and 'styles' configurations, incorporating Codex UI components such as 'CdxButton' and a variety of Minerva-specific styles like 'skins.minerva.base.styles' and 'skins.minerva.content.styles.images'.
- Refined `includes/Skins/SkinMinerva.php` by restructuring the method of loading skin and feature-specific styles. The update simplifies style management, allowing for a more granular approach to style application. This includes separating page-specific styles from feature-specific styles.

Rationale:
The implementation of Codex UI components within the MinervaNeue skin is to leverage modern web design principles, enhancing usability and aesthetic appeal. By refining the skin's style loading mechanism, we aim to at least maintain if not reduce the overhead, improve page load times, and offer a more customisable appearance, ultimately benefiting both end-users and developers.

Bug: T356678
Change-Id: Ia96f58397c23126e940cc9263b30e0da88c90a29
2024-04-03 13:28:02 +00:00
Translation updater bot 7d9c6e7657 Localisation updates from https://translatewiki.net.
Change-Id: I4d0cc3577768a793f5c851bb32e1414920210912
2024-04-03 09:26:02 +02:00
jenkins-bot c6a27036af Merge "Update imports for experimental file split in Codex" 2024-04-03 04:29:11 +00:00
Roan Kattouw 94ae5c67e9 Update imports for experimental file split in Codex
Codex v1.3.6 split the -experimental.less file into -experimental.less
and -experimental.css. The former only contains the Less variables, and
the latter contains the :root {} block with CSS variables. Both files
were also renamed. Update our imports accordingly, so that we import the
right things in the right place.

Bug: T360577
Depends-On: I12813bf0db89b72aa8f2a28ccccb3477e4361ac8
Change-Id: I0b2671cb42476eb264033fd7b15e038e74046602
2024-04-02 15:43:55 -07:00
Jan Drewniak f9183cbc81 Follow-up to cf723c00 - Guard against undefined $container
Since `initMediaViewer()` can be invoked via
`mw.hook( 'wikipage.content' ).fire($container)` it's better
to validate that $container is in fact an HTMLElement and not
an empty jQuery collection.

Bug: T360781
Change-Id: Ib43327dd70c35918e3079c7b6b23a161383654b5
2024-04-02 14:37:23 -04:00
jenkins-bot ff9b99c0ec Merge "Define background-color-neutral in night mode palette" 2024-04-01 23:04:51 +00:00
Jon Robson 480f84bc04 Define background-color-neutral in night mode palette
Bug: T357998
Change-Id: Iab5ec302274f65658885325e239329a1836cc8c3
2024-04-01 22:47:02 +08:00
jenkins-bot 53c5817b69 Merge "Apply history styles to watchlist" 2024-04-01 12:00:08 +00:00
Translation updater bot 3317211774 Localisation updates from https://translatewiki.net.
Change-Id: Ic893cfb5f61f7b649beb97354c23a3fae10a819d
2024-04-01 09:24:55 +02:00
Jon Robson 3ced132ce1 Define background-color-neutral-subtle in dark mode palette
Needed by categories

Bug: T357166
Change-Id: Iea31b59d00c0619567068a5ea5c440222d45ee3e
2024-04-01 09:17:11 +08:00
Fomafix effd4fe133 Use eslint rule "no-var": "error" and replace all var
Change-Id: I67acf88e1b8de55054248d7cf8ca622d5772ea6f
2024-03-29 07:40:22 +00:00
Fomafix a73e2d2d19 Add eslint rule "max-len": "error" and fix long lines
Change-Id: I079f300eea18024a6e1698b5016778fa60c74578
2024-03-29 02:05:03 +00:00
jenkins-bot 90470423ac Merge "Use alphabetic order for eslintrc rules" 2024-03-29 01:26:50 +00:00
Fomafix 05eb2ac47d Integrate service 'Minerva.Menu.MainDirector' into SkinMinerva
The service 'Minerva.Menu.MainDirector' is bad because it depends
on the global state.

Change-Id: I170653006356932ecdd909b14c193f42c4a5f511
2024-03-28 17:33:18 +00:00
Fomafix c50069252d Integrate service 'Minerva.Menu.UserMenuDirector' into SkinMinerva
The service 'Minerva.Menu.UserMenuDirector' is bad because it depends
on the global state.

Change-Id: Ife13188745b39844356e7976379582d5f451f5a3
2024-03-28 17:32:42 +00:00
Fomafix 5027a28fc1 Definitions: Remove global state parameter from constructor
Move global state parameter to new method setContext.

Change-Id: I07833f60e2796396c3c35776bd7d788d93eb114b
2024-03-28 17:31:13 +00:00
Fomafix 0dbe920285 Remove unused service UserOptionsLookup from Definitions
Also use typed properties instead of @var types.

And rename $factory to $specialPageFactory.

Change-Id: I7fe5a8ad96e619019c1bbbb9143ad09174a9de5e
2024-03-28 17:30:45 +00:00
Fomafix 86fb2a8d18 Inject service 'Minerva.SkinUserPageHelper'
Change-Id: I91d8066ea860bd4aa5f19f4c326fad032be5b9d0
2024-03-28 17:30:01 +00:00
Fomafix 0adbe80280 Use service 'Minerva.SkinUserPageHelper' in SkinOptions
Change-Id: I014e61c6692adbbe449f1e6aa9c6ae73dbcff925
2024-03-28 17:27:45 +00:00
jenkins-bot 7ea5db0344 Merge "SkinUserPageHelper: Use alphabetical order of the parameters" 2024-03-28 17:27:19 +00:00
jenkins-bot 899ebe39f0 Merge "SkinUserPageHelper: Remove global state from constructor" 2024-03-28 17:12:41 +00:00
Fomafix f8b8a83dc5 SkinUserPageHelper: Use alphabetical order of the parameters
Change-Id: I2bce7abfa2740ca7f3fb87968462cdc8eacbde7d
2024-03-28 15:20:36 +00:00
Fomafix 1c26798431 SkinUserPageHelper: Remove global state from constructor
* Move global state parameters to new methods setContext and setTitle.

This change solves the circular dependency error for service
'SkinUserPageHelper'. The service will used in SkinOptions in the
follow-up change I014e61c6692adbbe449f1e6aa9c6ae73dbcff925.

Change-Id: I80342e5168435c5318c378e2ac8a9a3c7a28eb4c
2024-03-28 13:10:48 +00:00
Translation updater bot cdfec8a4bf Localisation updates from https://translatewiki.net.
Change-Id: Ib798c55650bbeba57a6d3670fb48bbab87f7569a
2024-03-28 08:35:06 +01:00
jenkins-bot e46e0bbf6f Merge "Inject service 'Minerva.LanguagesHelper' into SkinMinerva" 2024-03-28 02:31:21 +00:00
jenkins-bot ca8dae0def Merge "LanguagesHelper: Move $out from contructor to doesTitleHasLanguagesOrVariants" 2024-03-28 02:31:06 +00:00
jenkins-bot 045da4ce5b Merge "Inject service 'Minerva.Permissions' into SkinMinerva" 2024-03-28 02:24:15 +00:00
jenkins-bot 4a0fac3227 Merge "Avoid setContext in ServiceWiring for Minerva.Permissions" 2024-03-28 02:24:13 +00:00
jenkins-bot 3bfc204f85 Merge "Inject service 'Minerva.SkinOptions' into SkinMinerva" 2024-03-28 02:20:24 +00:00
jenkins-bot 4713a127df Merge "Improve variables" 2024-03-28 02:20:19 +00:00
jenkins-bot 2a233b1542 Merge "Remove styles in hacks.less that no longer apply" 2024-03-27 21:09:16 +00:00
Fomafix dfa61af611 Use alphabetic order for eslintrc rules
Change-Id: Ic7afff052c004ba179a8814f79e7722fb66bdbbc
2024-03-27 19:54:21 +00:00
bwang b8a6a9c1bd Remove styles in hacks.less that no longer apply
Bug: T360387
Change-Id: I3eb7ec0c8a52a39cc97b60443cac0e6a5bba5482
2024-03-27 14:14:09 -05:00
jenkins-bot 8df385d08f Merge "Minerva should use content-tables ResourceLoaderSkinModule feature" 2024-03-26 18:29:57 +00:00
Translation updater bot 7ffe913a64 Localisation updates from https://translatewiki.net.
Change-Id: I470441299ff1c0806270d3c68be6cfcab9f709d2
2024-03-26 08:23:31 +01:00
Fomafix 220bf6ff89 Inject service 'Minerva.LanguagesHelper' into SkinMinerva
Change-Id: Ie81195f31194bab819491576681b02660ec057b4
2024-03-25 22:36:07 +00:00
Fomafix f68b218076 LanguagesHelper: Move $out from contructor to doesTitleHasLanguagesOrVariants
Services MUST NOT vary their behaviour on global state, especially not
WebRequest, RequestContext (T218555).

Change-Id: I4b73ef713166d8b254023c1eebbb45c963880a99
2024-03-25 22:34:37 +00:00
Fomafix 57d1f15d64 Inject service 'Minerva.Permissions' into SkinMinerva
Change-Id: Ie68691d7030ea622f2bc232fea2df49b70484e19
2024-03-25 21:44:13 +00:00
Fomafix 11c0e6966b Avoid setContext in ServiceWiring for Minerva.Permissions
This change avoids a duplicate setContext in SkinMinerva.

Change-Id: I4b716a645bb2b6a5c05aa6e9a463640a2d87ab41
2024-03-25 21:43:50 +00:00
jenkins-bot 4963900d70 Merge "Update padding on <p> elements" 2024-03-25 19:36:20 +00:00
Jan Drewniak cf723c00c3 Guard against undefined $container element in initMobile.js
In order to prevent spikes in JS errors, ensure that the $container
element exists before initializing the mobile media viewer.

Bug: T360781
Change-Id: I48a57e8008e7bd90e9fcfc783f3720f6f75520a7
2024-03-25 09:38:11 -04:00
Fomafix 999f04c366 Inject service 'Minerva.SkinOptions' into SkinMinerva
Change-Id: Ia7e7660c55e16731366bdf6332d5237188e9bbb1
2024-03-25 13:17:32 +00:00
Fomafix 1f3fc12bb4 Improve variables
* Remove unused private properties.
* Remove unused variable.
* Inline variable used only once.

Change-Id: I7fcab8328264384335371a152c3f3cd4548c4210
2024-03-25 13:09:17 +00:00
jenkins-bot 278b5189bd Merge "Use Html::element instead of Html::rawElement and htmlspecialchars" 2024-03-25 12:50:29 +00:00
Fomafix 5d27b4ff3e Use Html::element instead of Html::rawElement and htmlspecialchars
Remove the comment about the reason for output encoding. Output
encoding is standard and doesn't require an explanation.

Change-Id: Ia2df4c95dca8aedca70be2f3b3827498de1f2030
2024-03-25 09:32:30 +00:00
Translation updater bot ed34320ea4 Localisation updates from https://translatewiki.net.
Change-Id: Ieac8e8fefa303febbbf60ca33cb9417cbf86a5e9
2024-03-25 08:39:06 +01:00
Jon Robson 32bf846613 Apply history styles to watchlist
The changes here only apply to the AMC-disabled mode
and only apply when visiting the watchlist with the
following configuraton:
$wgMFUseDesktopSpecialWatchlistPage = [ 'amc' => true, 'base' => true, ];

This change will allow us eventually to remove the special page
in MobileFrontend.

Bug: T109277
Change-Id: I15e95cbae77edde36ca822345a461d791ea5f29d
2024-03-22 14:10:07 -07:00
Translation updater bot 18d194b957 Localisation updates from https://translatewiki.net.
Change-Id: Idce4450d0566d4ba22f12bcf5bd75ef521c14637
2024-03-22 08:47:59 +01:00
Jon Robson 8f8fd6a1e4 Minerva should use content-tables ResourceLoaderSkinModule feature
The styles in Minerva are identical to the preset in core with the
own exception being padding. Therefore use the upstream styles
and retain only the override.

Bug: T357998
Depends-On: I206e91dac7e14d80a5ffc6b533255b54dafca29a
Change-Id: I3eb07a03b3b4e2a7544e5b07de6af9f67a1c965f
2024-03-21 22:49:14 +00:00
Jon Robson c2623ed44f Add soft dependency on Minerva to Vector
Bug: T359607
Change-Id: If293689999a54f067792d172441c7c47d0992ed9
2024-03-21 21:05:47 +00:00