For consistency with other skins, its easier to see how hooks are
invoked when they are separated from the skin.
The skin is also updated to use namespaces and modern skin registration
which has been available since MediaWiki v1.36.
Change-Id: I1c93d4e817b53c93eba47ee9086c86c5d75443e5
* Removes the class from site notice - this provides no styling benefits
inside MediaWiki and is inconsistent with other skins. If site styles
need to target this element they should use the siteNotice id
* Replaces mw-body-content class with monobook-body and adapts existing
styles. The mw-body-content class will soon be applied to
$this->get( 'bodytext' ) instead. The core change
I3a91b294fcb3724cd46743e497dff723de0490a6 will shift this class to the
child element. There are no styles outside Monobook that rely on this
class and only 45 Monobook specific site/user styles that could be impacted.
The new class is prefixed monobook to avoid confusion with classes that
originate in core that are prefixed `mw-`
Bug: T279388
Change-Id: I90d85c21f4a62e6697f24e3ce388445a0a53c2b0
For callers calling `$this->getFooterIcons( 'icononly' );`
`$this->get( 'footericons' )` can be used instead.
Note the output HTML should be identical.
BaseTemplate::getFooterIcon
will unset any items that are not arrays, but upstream changes
have made this unsupported. Using SkinTemplate::getFooterIcon
will also ensure that all icons have width and heights if not
defined which is better for performance.
Bug: T267447
Change-Id: Ia5278884a10173a509b7ae50b8407774c5d8719b
The anon placeholder is now provided by core.
The ULS extension hack is no longer needed.
Bug: T263382
Change-Id: I008511f5fc326bca10f2c2bf4e03b2df3561b56e
Also removed is the helper deprecatedHookHack() method.
SkinAfterContentHook should be used instead.
Bug: T259400
Change-Id: I3818cf1ea26444f3736af2b48aabf8b67815008a
The search form no longer changes based on this config variable.
Note that the variable has always been true since its introduction and
there's no way for users to turn it off, so probably the single button
search form has never been shown.
Bug: T256568
Change-Id: I86fde4f89cff553966614d725bbd6ba14d4ab1a4
Per discussion on T254546 the language portal is so long in most
articles that it pushes down other boxes rendering them inaccessible
for this reason make sure Monobook outputs it last.
Bug: T254546
Change-Id: Ib80fa6414e220fbc3c1b6e3527c32fb28b994376
Various extensions reveal the language portal when empty by appending
a link. Monobook needs to check this now itself, to avoid these links
disappearing - for example the Wikidata edit link.
Bug: T252841
Change-Id: If2cf64f6b7ba313d3e437e9da63afa886fee5d11
That way hook subscribers can use RequestContext and whatnot instead of having to resort to globals.
Change-Id: I1e4be7156aaea12fef75169bd0216140b9d50388
Add `@param-taint $contents escapes_htmlnoent` annotation to
MonoBookTemplate::getBox(). The method will escape the $contents
parameter if it's an array, but it will not if it's a string; Phan
can't distinguish the types, and assumes it always escapes. Use
escapes_htmlnoent to suppress warnings about double-escaped output.
Change-Id: Id8ef73f2efbe8d4d5510917d55dbac4e41b2b3a1
Directly use the UTF-8 encoding of the 'NO-BREAK SPACE' (U+00A0)
instead of the HTML/XML entitiy  .
Bug: T154300
Change-Id: I610c8c6a70c7561c46f80e40614f69ccedab5194
MonoBookTemplate incorrectly calls getIfExists() for newtalk/undelete:
attributes of wrapper <div> must be under the 'parameters' key.
Change-Id: I5392477d493174b0b5598927bfbcec2029b0987e
* Improve their accessibility by giving both links a full label
("Jump to x" and "Jump to y" instead of "Jump to: ", "x", "y").
This also makes things better for localisation.
* Use pure CSS for the toggling of the visibility on focus,
instead of relying on JavaScript. Especially given the
JS came from core's 'jquery.mw-jump' module, which is
considered technical debt per T195256.
* Use plain <a> links in the HTML instead of wrapped in a <div>.
This solves the long-standing problem whereby the margin
between #contentSub and #mw-content-text had to be awkwardly
negated and overridden.
Bug: T195256
Change-Id: I40a769ee3a822a5a9167ec1d144e6b151eb8e141
* Add screen-mobile.css with basic mobile styles
* Force loading of screen-desktop on IE8- due to lack of
@media width support
* Add some new divs and a set of spoof cactions for jumping
around the page (what's js?)
* Replace cactions label with a more descriptive string (was
previously set to display:none regardless)
* Also add a set of icons for fixed widths for tabs and things
(icons-source.svg is the source file for the set, and includes
a few others that ultimately weren't used here)
Cutoff 850px. Desktop styles should remain unchanged, with
mobile remaining stylistically consistent.
Change-Id: I737a7447db1e44e0d6abaa4c07813295a5ac73a6
More helper functions, general refactoring.
Output structure is all the same, all existing attributes
maintained. Some new ones are added:
* p-personal now rendered via getPortlet; has extra attribs
according to all others rendered with it
* footer rendered with slight variant of getFooter out of
BaseTemplate; has extra language attribs according to that
Change-Id: I462d1222b0166956d3dce17fbceccf386e179e8d
instead of just spitting it out directly
Also rename all of said functions accordingly, add documentation,
and start trying to make an actually cross-compatible version of
getPortlet() for BaseTemplate...
Output should be structurally the same. All existing attributes for
output elements are maintained; some may have new attribs added due
to more consistent render method (getPortlet). (Essentially, if one
item had it, now they all have it.)
New attribs include:
* id
* lang
* dir
* aria-labelledby
Change-Id: I0a7ca1b95c2ad03273ed9c713be0da694c94a176
Also delete unused images, since even if something is
somewhere using them anyway (looked, couldn't find
anything), it wouldn't be able to find them in the new
image location regardless.
Wiki.png, magnify, and link are all part of core and have
been for some time.
Change-Id: Id7a02155a5f1b207908c9c0c8f7519b6d3f9a886