Avoid creating of Title object to get the "fixed special name" (which is
the localized name) and compare that against the local name of the
current page, just use the SpecialPageFactory to get the canonical name
(which is the english internal name, not the english visible name) and
compare against the list of canonical allowed pages (adjust the existing
list to the canonical names, that are "old" names in different cases)
Change-Id: Ia6f6574bf6e65c75f8977ff016feda6ecdca3776
The use of "HookHandlers" attribute in extension.json makes it possible
to inject services into hook handler classes in a future patch.
Bug: T271019
Change-Id: I57dac8d590b5afa7524000d93c8477a10148c052
Tipsy was added in I993bf60909024453a14de85af6239bded02eb8a6 however
has since been deprecated and usage is discourage.
Falling back to standard HTML `title` attribute display seems fine. Some
buttons (such as previous/next arrow) have not had a tipsy tooltip.
To be done separately: TipsyDialog which is used for StatusInfo
Bug: T77402
Change-Id: I2f7ae189734ba6d6e67ca703a42ae899ec56729d
Replacing 'mediawiki.ui/variables.less' `@import`
with new skin-aware 'mediawiki.skin.variables.less' standard.
Also replacing and removing scattered WikimediaUI Base variables
with new skin variables.
Also
- replacing several static values with new Codex design tokens featuring
skin variables for following properties:
- `background-color`
- `color`
- `border*`
- `border-radius`
- replacing local variables with new skin variables where applicable.
Bump required MediaWiki core version to >= v1.41.0.
Bug: T319381
Bug: T332541
Co-Authored-by: Volker E. <volker.e@wikimedia.org>
Depends-On: I04f9e48a1cf9dee915cf51e1e12b17ff0a595a06
Change-Id: Ie834b3f652bd22d9bf96c112166a5b7fcc3ecf2d
This is in preparation for merging the two modules in core and not
exposing oojs-router directly. mediawiki.router is merely 1 line
of code to hold a singleton, and indeed it appears there is no need
for multiple instances to exist given it communicates exclusively to
and from the 'window' object, which is also a global singleton.
Change-Id: Ice09b523dfbefd67493175554eeb525771e8f29d
WebP support was added to core but MMV was not updated to
allow WebP to be previewed. This should enable the functionality.
Bug: T282202
Change-Id: I4fd6a0a2189a58faa6bccfc1282de57b8beb16cc
The MediaViewer and MultimediaViewer* instruments were disabled circa
October 2021 in Ie7dd8739efc.
This patch removes those instruments and any supporting code and data.
Notably, this patch does not remove the mw.mmv.logging.ViewLogger
instrument, which is responsible for logging image views.
Bug: T310890
Change-Id: I97d41be93849b2ae9d1adba6660546ea716657fd
The MediaViewer and MultimediaViewer* instruments were disabled circa
October 2021 in Ie7dd8739efc. However, the EventLoggingSchemas entries
are still included in the ext.eventLogging RL module, which is fetched
on the majority of pageviews.
At the time of writing it is not clear whether the instrumentation code
will be archived. If it is not archived, it should be migrated to the
Event Platform, in which case the EventLoggingSchemas entries can be
reinstated.
Bug: T310890
Change-Id: I2e99664f4c00513dc61fdf9f3b53da241902e13d
Remove using of User:getOption since this method
will be hard-deprecated. Now it is soft-deprecated.
Bug: T296083
Change-Id: Ic7d52a3be7bcfef8827d3fa33b663fbe05fef3f8
The 1 line of code this contained, to lazy-load mediawiki.notification,
and forward the function call is now part of mediawiki.base,
and required no dependency.
Bug: T233676
Change-Id: I15e135f7e91ef2a608f7ee915ae3f530c47e5734
Results in small UI changes, but allows us to delete a lot
of code duplication.
Depends-On: I9049f5a1c0d88680fc4a174e390dd08e27c0eee2
Change-Id: Iebe7bdc8a026b929a35e823d8107d90e7bb62b82
Given case-sensitive search, the callback didn't show up
when searching for "MakeGlobalVariablesScript", unlike for
almost every other deployed extension.
Change-Id: Ib9138446a898802150a123e140a14bfba08709e6
Use the new extension.json attribute instead.
Bug: T214211
Depends-On: I27ecebe27d7aaebe6d1317bc5eaea9cca368b45d
Change-Id: Iacb68ce9a7bab864720ef9a56f8702a4f02c129d
* Deletes the mmv.model.EmbedFileInfo class file and its test file
* Updates the extension.json and MultimediaViewerHooks.php files to reflect
these deletions (by removing entries from dependency lists)
* Refactors all instances of `new mmv.model.EmbedFileInfo()` to instead use a
POJO with appropriate properties. Conditional assignment is used for the
caption and alt properties if there is any chance they won't be available, to
keep from adding props with falsy values.
* Refactors JSDoc method annotations so that `@param` tags expecting an
EmbedFileInfo instance now expect an object; relevant properties of this
object and their types have been added to the method annotations as well.
Bug: T77320
Change-Id: Ie9f5f24136f4b73000259685474ce4d765a3ccd3
The JavaScript files from the module 'mmv' uses directly functions from
the core modules 'mediawiki.user' and 'mediawiki.util'.
This change adds the missing dependencies on these modules to ensure
that the used functions are present.
Change-Id: Iad7142a5ed52a90b433f94afa25c8ce58b26df5b
Using window.devicePixelRatio directly means we won't be supporting Windows 8
and/or IE 10 & 11. But that seems intentional based on 828f6d6ac9db.
Bug: T206099
Change-Id: I53dbce0a8ddc69c4edfd4d10f98031aa4f7cd20a
As best I can tell, adding the `ext.eventLogging` module as a dependency
for these three modules is unnecesary. One of those modules doesn't
even exist, and my greps across the entire extension show that
mmv.logging.Logger.js uses `mw.loader.using` to load the module, so a
server-side dependency isn't required.
As an aside, this extension should probably use the more abstract
`mw.track` interface instead.
Bug: T180192
Change-Id: If71277114be5a003d8f51040e52a601ace983c51
1) ExtensionJsonValidationTest::testPassesValidation
Failed asserting thatMultimediaViewer/extension.json did not pass
validation.\n
[url] Should use www.mediawiki.org domain\n
' matches expected false.
Change-Id: I90fe971f48e94f6810832fd8a784c9ca8967576b