49 Commits (62b21a8d10e7ac6ac82e6c4ff8f579a37d481d80)

Author SHA1 Message Date
Isarra f9a7111b73 Render unnecessarily large 2x logos to ensure we support unnecessarily high-res devices
Only does this with wordmarks; desktop devices are a lot less likely to merit this, and
the larger desktop logos are probably a rather bad idea to make unnecessarily large
anyway. Whereas the wordmarks should still be pretty small in terms of filesize as
they're going to be pretty simple, and are all we normally show on mobile.

Bug: T232540
Change-Id: I1932a99d8784eadf02f2711d9557425de0db0100
5 years ago
jenkins-bot 30505c31e5 Merge "Create wrapper for all junk below firstHeading, including nav stuff" 5 years ago
Isarra 62c2eb0760 Create wrapper for all junk below firstHeading, including nav stuff
And put the position:relative on that. Keeps the sticky header out of
it, regardless, and let folks do their weird non-content voodoo on
stuff like the siteSub more consistently, I guess...

Bug: T231400
Change-Id: I7ac35f741210a0c54976f43d2294af8f123967a1
5 years ago
jenkins-bot c8ace13b6a Merge "Revert "Add settings to use a particular layout even at higher resolutions"" 5 years ago
Krinkle ee5a9fc043 Revert "Add settings to use a particular layout even at higher resolutions"
This reverts commit 49a2ab3417.

Change-Id: I78c0c7e6c0ae46e24e076752b07b1370b0f2bc29
5 years ago
jenkins-bot 51b19c4e84 Merge "Add settings to use a particular layout even at higher resolutions" 6 years ago
Isarra 649a9f133e Add arrows for extension:proofreadpage pages and sort tabs appropriately
Currently js-only due to the default (only) vector styles requiring js. Fixed in
Ifd8be387cef671b2aaa2a482c145bccf2e6d1543, with a followup to clean up a bit after
that assuming that doesn't mess up too much to be merged, but this works regardless.

Bug: T231250
Change-Id: I4cadcbc3e51672fb075c884b2d2cc1d799b1b1b0
6 years ago
Isarra 49a2ab3417 Add settings to use a particular layout even at higher resolutions
(Cap at single column or single-sidebar instead of the default three-
column mode.)

Adds user preference options and a $wgTimelessDefaultLayout config to
change the default wiki-wide. Intended for people who hate change and
prefer the same navigation layout (sort of) as we've had forever, and
for people who are really bad at change and just keep getting confused
when everything keeps moving around across different sized devices, as
well as anyone else who just likes... options, I guess? Whatever the
case, this is seriously up there in the running for 'most requested
feature'.

Uses three separate modules to avoid sending all users the same styles
twice regardless of what they'll even use, as each set is mostly the
same, just with slightly different breakpoints. Not seeing any saner
ways to do this, however, as even with LESS we can only use mixins/
includes/& afters to avoid the duplication in terms of what we work on,
not what is generated.

Bug: T131803
Change-Id: I0538d36c2ed7a5009b2a0f75952671ac9447fd56
6 years ago
Isarra c16be2f4dd Fix languages/variants stuff some more
Messed up a couple of things:
* Nojs variants toggle
* Order of sorting out language/project stuff fixed so it should correctly occur

Fixed.

Change-Id: I9a55848ca50884594035949e5aa855d98ddff77c
6 years ago
Isarra a4900353b1 Use flex for logo container width and to show some username on small screens
* No columns, so no point aligning anything to column-widths here.
* Add some IE9 fallbacks because the entire header is now flex.
* Clean up, consolidate same styles, etc

Bug: T184998
Change-Id: Iecf99d093a689d3c32932b2603f16939127ce7bd
6 years ago
Isarra ba13e4513a Only move special page namespace caction to sidebar if only one
As in, it's not associated with an actual page with a talkpage and stuff.

Change-Id: I22dcea00efe27011881529f4b2d9dce1642f294d
6 years ago
Isarra f0fc1a4362 Custom logo rendering, including text wordmark images
Use a file upload onwiki for simplest approach, or specify srcset info in an
array if that's not an option or otherwise not desired.

For instance to just reuse a $wgLogo and $wgLogoHD already set for a 160x160px
logo, but where the HD versions actually come out the right size:
$wgTimelessLogo = [
	'1x' => $wgLogo,
	'1.5x' => $wgLogoHD['1.5x']",
	'2x' => $wgLogoHD['2x'],
	'width' => 160,
	'height' => 160
];

Or to use File:Cows.svg uploaded onwiki:
$wgTimelessLogo = 'Cows.svg';

And the same thing with $wgTimelessWordmark to replace the site title string
with an image version.

Fallback behaviour remains unchanged, if just not using these.

Bug: T132004
Bug: T230663
Change-Id: I0d7b398935045ba69462252d40832ed95ad2d5ed
6 years ago
Isarra 8bca35dec0 Put languages back in sidebar on desktop
Partially reverts I148707085059f458512d328c415ea0bf134163f3 plus some random
cleanup and stuff

Both of the following bugs involve wikibase stuff so I can't actually be entirely
sure this resolves them, but I thiiiink it does because it should be killing the
offending parts of the above change that caused this? Probably?

Bug: T231256
Bug: T231234
Change-Id: Id7c0d90a805450b577271a321572fcd552ecbc3e
6 years ago
Timo Tijhof 8ddbd36d25 Merge 'skins.timeless.misc' back into 'skins.timeless'
Follows-up f450f7e13 and 1bb12ffaae which introduce and
explaine that module's need based on what I believe was a
misunderstanding.

Specifying an options object (e.g. with a "media" key) is optional
for a stylesheet, and a module can have any number of CSS or LESS
files that are packaged together. The syntax for this was designed
for PHP and unfortunately does not translate elegantly to JSON,
but it does work. In PHP, examples of this can be found that look
as follows:

 'styles' => [
   'foo.css',
   'bar.css' => [ 'media' => 'print' ],
   'quux.css',
 ],

Other examples of this in JSON can be found in Nostalgia.git
and ArticlePlaceholder.git.

Change-Id: Ie2a39a79c0892a1c5699a05071216eb5fe660bc1
6 years ago
jenkins-bot e4c339c820 Merge "Move email user to userpage tools, move print/export down to bottom of page tools" 6 years ago
Isarra dedcecd245 Move email user to userpage tools, move print/export down to bottom of page tools
Change-Id: Ie6b5bb092153dd2fa87f46aa606893915c421610
6 years ago
jenkins-bot d9e3a5d1ec Merge "Migrate backdrop image style generation to set a variable we use in the LESS instead of adding the styles prebaked" 6 years ago
Isarra b1901210d9 Migrate backdrop image style generation to set a variable we use in
the LESS instead of adding the styles prebaked

Bug: T223112
Change-Id: I773dbd9bd6d318144685d691e72627a00906472b
6 years ago
Simon Legner 4028c2504c Revert "Drop `redundant` attribute from `a` elements"
This reverts commit c9e9bb97e2.

No longer needed due to I630410aea2852f7a72fea67bbf256b3561ea0f3f.

Change-Id: I179aa6c52da9452f39c9f816c58af44288604863
6 years ago
jenkins-bot f0150509dd Merge "Move some more page tools to 'page tools'" 6 years ago
Isarra 91b22e854a Move some more page tools to 'page tools'
Extensions:
* Cite
* Wikibase
* Collection

Change-Id: If3f1627f91d398596d8e4e9c648688e42377b64d
6 years ago
Simon Legner c9e9bb97e2 Drop `redundant` attribute from `a` elements
Holdover from SkinTemplate assumptions about link assembly.

Bug: T214202
Change-Id: Idfa033bcfd100d031d31449228316206ff124aae
6 years ago
Isarra 2c526bfdbc Make personal menu header expand to show (more of) full usernames
* Lose the special casing replacement labels for long usernames and
  just truncate in CSS with '...' or whatever
* Fix weird padding on two-column mode
* Possibly cleaner Echo badge/whatever handling
* Alignment fixes in general

Note: Breaks two-column layout for IE9-. Probably easily fixed (don't
apply that one line to it), but I don't know how, and don't care.

Bug: T161282
Bug: T173215
Change-Id: I7d27e13265ee54767c509387baf6430bd7c4792d
6 years ago
Isarra 2808c5c595 CSS-based pokeys
No more need to add in an html pokey element every potential dropdown menu.
Aaaaaagh that made it bigger, didn't it.

Change-Id: I5d3817aa026849a5304710a32a3585f3e698321d
6 years ago
Isarra 1d2a9583a5 Move variants and languages into page tools dropdowns
Hopefully saner access, also clears up some of the sidebar space.
Also forces moving the wikibase other-projects blob into its own
blob entirely.

Not done:
* Pokeys (need to migrate them all to css-only; later patch)
* Handling for no languages for wikidata stuff (may not be possible;
  minerva likewise has no handling)

Bug: T213510
Bug: T181309
Change-Id: I148707085059f458512d328c415ea0bf134163f3
6 years ago
jenkins-bot b60faa7953 Merge "Move Other Projects block to interwiki chunk" 6 years ago
Isarra b8829b896a Fork getPortlet from MonoBook
That one's newer, lets us do more. Appears to work fine as a drop-in replacement, as long as we add back the emptyPortlet class and kill some dead compatibility stuff.

Change-Id: Id531671eef97c670665aebed784eca41c0394ce8
6 years ago
Isarra f7cf742c3c Create getContentBlock function to get rid of some of the ridiculous indenting
Seriously, what the crap. Break this up a bit, shall we? Also probably means we might be able to extend this better, or something. (Not that I have any idea how that works.)

Change-Id: I2576d2244091aabcc973d9d4b7a3020d34f365f8
6 years ago
James D. Forrester 655b109bea build: Upgrade phan-taint-check-plugin from 1.5.x to 2.0.1
Add `@param-taint $content escapes_htmlnoent` annotation to
TimelessTemplate::getPortlet(). See explanation on
Id8ef73f2efbe8d4d5510917d55dbac4e41b2b3a1.

Change-Id: I2fc96ed7876292dd6bd1e7f4fe799bdb6d8cdfd1
6 years ago
Isarra 542027e60b Move Other Projects block to interwiki chunk
Absolutely untested because I'm not installing wikibase.

Bug: T181169
Change-Id: I0cc69b6391c4e513880a91a8fb339451516a60ed
6 years ago
jenkins-bot 9481c431de Merge "Preserve standard username label to allow customisation" 6 years ago
Isarra c576c68a1f Add TimelessFileModule and $wgTimelessBackdropImage configuration
option to set configurable background image for the skin as a whole

Defaults to the cat, but can ideally be set to anything appropriate
to the wiki in question. Recommendation is a 20-50% opacity black/
white background image, where the alpha values of the b/w parts are
likewise around 10-50/255.

Bug: T193330
Change-Id: Ica3e2ce2568557ef157d06d1b7127b030f3c38f0
6 years ago
Isarra 999ed40930 Preserve standard username label to allow customisation
Bug: T215822
Change-Id: If371deb02ea97478fd856aa4941c4715aaca7a11
6 years ago
Jack Phoenix fb690eeda4 Remove broken compatibility hack for the legacy SkinTemplateToolboxEnd hook
SkinTemplateToolboxEnd hook really shouldn't be used and extensions should have been using BaseTemplateToolbox hook instead, for that hook's been around since MW 1.18.

Also this code was broken because $boxes was undefined.

Change-Id: I34537e8eb6ec0109253b5470d12d12d86c4dada0
6 years ago
Derick Alangi 7c6f015167 Declare each class property on separate lines
It's easier to read and also type hint and do a lot of
things when class properties are declared this way. I think
this is the standard way and it's an improvement :)

Also, added soft type hint phpdoc for these class properties.

Change-Id: I6f2bee7d5cd771f25241abcaebfacd6eb540175f
6 years ago
Isarra 12ec0fc69e Make page logs link actually work for page
Was using the page as th actor, not the target. Fixed.

bug: T163262
Change-Id: Idf9a9b3170d34df6c1685ccbc10986619a4afd9e
6 years ago
Umherirrender f784b7064e Add method scope visibility
Change-Id: Ic2c07aa870100158441e1868303f5e382fad5d06
6 years ago
Isarra 03f01e242c Use default search placeholder
The custom one as-is is never going to actually be accurate due to
caching, with an implementation that was basically just a bad joke.
A more thoughtful implementation with rounding and stuff per the
winter prototype is probably in order, but that will require a
different implementation anyway (T182345)...

bug: T160647
Change-Id: Id2776d69a7d42b9907b4363977134fea48dc2440
6 years ago
Kunal Mehta ef01612ab6 Fix escaping issues with messages
Notably, content passed to Language::convert() needs to be escaped beforehand.

Spotted by phan-taint-check-plugin.

Change-Id: Id8a5f8bbe635e2f321882296e40dd0c41cf91a3b
7 years ago
Isarra 7df2db6ee9 Make afterContent stuff appear correctly after content in all view
modes

Mostly affects extensions that add stuff after the content with them
hook dealies, such as flaggedrevisions etc.

bug: T200729
Change-Id: I5c46af8f4cab20b04930a0e25d380ec040557bb6
7 years ago
Isarra 496997424d Add sitesub, but hide by default
Bug: T193215
Change-Id: Ia09ae2b763107d0bdc3c379525405e8edf17edb7
7 years ago
jenkins-bot 279ded1b51 Merge "Fix display of categories in the sidebar" 7 years ago
evad37 3139581560 Fix display of categories in the sidebar
Switching from a unique approach -- getting category names, querying
the database, and then building links -- to the standard
OutputPage::getCategoryLinks() fixes the display of redlinks (T175713),
display order (T197852), and perhaps other bugs in the subtasks
of T160645.

A downside to this approach is that categories will not be shown on
history pages, but this is consistent with other skins (e.g. Vector
and Monobook) not displaying categories on history pages.

Bug: T186089
Bug: T175716
Bug: T175714
Bug: T175713
Bug: T197852
Bug: T160645
Change-Id: Ifad999033e8448615128cba4d6386045a9fc749b
7 years ago
Isarra b76ae6c43a Attempt to fix overflow issues with hsc- and mb-style implementations
* display:flex for three-column
* float content and some voodoo for two-column (same as monobook)

Also had to slightly rearrange dom to make the latter work. Content
is now before nav in dom.

Change-Id: I7209eb21473877592d89f8471f8f8ed1f6b87851
7 years ago
Fomafix acce94cea4 Simplify message parameter handling
Change-Id: I1ca300e0ed857c7ea74c4bd1ade599cc38bae381
7 years ago
Kunal Mehta 95f038996e Don't use wfMessage()
Avoids GlobalTitleFail log entries.

Change-Id: I53462eed5d0513da0e1130a4776c0bb5c86f94b1
7 years ago
Bartosz Dziewoński 70b5f24986 Fix condition for 'emptyPortlet' class
Follow-up to 6b9616d1ca, which
accidentally inverted the logic.

Bug: T196026
Change-Id: I98bc7529a1894b09ec3d80aab244327f526c022c
7 years ago
Paladox 6b9616d1ca Fix $count to === against array instead of using count that fails
Bug: T195613
Change-Id: I3f38ae8f5f322c49639b23126f990854f6a6549f
7 years ago
Isarra 24c7182ae8 Move classes to includes/
Change-Id: I77862f0a451d4b742e762a3caedf032edd06485a
7 years ago