Commit graph

143 commits

Author SHA1 Message Date
Jon Robson 952789bc17 Switch Minerva button template to use Codex and remove mw-ui-button
- Removes 'mw-ui-icon-with-label-desktop' as that is now the default behavior for icon only buttons in Minerva
- Removes icon flushing classes, use codex mixins instead

80 Visual changes relating to minor icon/button subpixel changes in the heading, edit section links, and page actions

Bug: T319260
Change-Id: I503b643d33e43196483af4b5f9dd312237322ac8
2023-08-24 15:57:01 -05:00
Martin Urbanec 0109b17483 watchlist: Don't assume only named users have watchlist access
In I1ccda3878a658d4251429ae65ebee04c09d81243, core decided
to technically allow temp. users to have watchlist access,
but have it disabled on permission level
(viewmywatchlist / editmywatchlist) instead of by isNamed() checks.

Minerva expects the watchlist permissions to be assigned to everyone,
but actual watchlist access to be available only to named user.
This is an incorrect assumption. Make a clear difference between
"page is watchable" concept (watch icon should show) and "user has
permission to watch" (if not, CTA to log in should show).

There is one additional step to fix, which is ensure
temp users receive the T330518 drawer. That is not a bug
in MinervaNeue, but in core -- mediawiki.page.watch.ajax.js uses
e.stopPropagating(), which means Minerva's CtaDrawer doesn't get
a say. Ideally, mediawiki.page.watch.ajax.js would know whether
the user has permissions to edit their watchlist. Alternatively,
it could have an interface to allow extensions to add their own
error handling. See T344925 for details.

Bug: T344870
Change-Id: Id1757fb4fb433fe39cf4d5c6e1e9c65ab5abae14
2023-08-24 14:12:43 +00:00
Umherirrender 4ce42dd5cb Use namespaced MediaWiki\Html\TemplateParser
Bug: T321681
Change-Id: I7cec363ce0f4a6d5797a3f176b5cb766930a84fe
2023-08-20 02:48:10 +02:00
gerritbot fd2fe83a0c Replace some moved Title class uses, now MediaWiki\Title\Title
Bug: T321681
Change-Id: I236a14b07bd78141f82e86d7ea872d24b6cd88eb
2023-08-19 19:36:46 +02:00
Jon Robson 0c6ac2926d Edit icon uses template parser
Bug: T344007
Change-Id: I772f2c8be7e4f48e9d67a5d1d7d3ef9e6af17851
2023-08-10 22:04:11 +00:00
Jon Robson ded6430b47 Echo uses Button template
Changes
* Update FIXME in userMenu.less to merge selectors
* We replace minerva-user-notifications class with minerva-notifications
to short-circuit Echo's code so that it no longer replaces the Minerva
notification badge with its own.
* We update resources/skins.minerva.scripts/initMobile.js to introduce
our own wire up code - this is responsible for opening Echo overlay
and reseting the counter. The code in Echo will be removed in a follow
up (see <I2f923e509d24524a2375ffbe6b3ef336487574bb>)
* We update skinStyles/ext.echo.styles.badge.less with styles from Vector 2022
so that Minerva desktop remains consistent with desktop Vector 2022 experience.
* We clearly mark technical debt relating to the special mobile version.

Testing:
* Pixel.js has a group echo that covers all the different variants.
Make sure to update to latest main branch before running these.
* Desktop should behave the same for Minerva as Echo.
* On mobile only when a user has unseen notifications a red circle
is shown. Otherwise a bell icon is shown, never with number.
* On mobile a single button is visible that combines alert and count
numbers.
* With Echo disabled a bell shows that links to the user talk page

Visual changes:
* Previously the red circle became a transparent/gray circle on click. Now
it will always be red.
* Minor aligment changes to red circle and bell icon are expected as
the change prevents MobileFrontend/Echo updating the icon to use
Codex.

Bug: T342907
Change-Id: I55c18cf723a32f80b93a01dd0687e005162c4e93
2023-08-08 15:44:38 +00:00
Jon Robson 3da423f219 [Icons] Main menu, secondary actions and search icon are built via templates
Bug: T342908
Change-Id: I30195583b35d3966d5f221241e21a0ef165a450e
2023-08-01 14:21:11 -07:00
bwang e6511ebe8f Add option for different icon sizes, reduce size of arrow icon in last modified bar
Change-Id: I494a02e5ba08cc7849cf1973f8f9163c672fccff
2023-07-31 14:18:49 -05:00
Jan Drewniak 11e09ea7b3 [Icons] Convert history/next status bar icons to Codex
Creates a new Icon.mustache file in favour of using
MinervaUI::iconClass.

Add a new icons.less file and the following icons:
- history
- expand (next) arrow.

These icons are used exclusively in the history
status bar at the bottom of most pages.

Bug: T319260
Change-Id: If81186418fe758d7be9c3e57cf5d2aa889517f2d
2023-07-28 16:56:24 -07:00
Daimona Eaytoy 1898a3ccab Replace deprecated MWException
And more generally remove `@throws` comment used for unchecked
exceptions, callers must not catch them.

Bug: T328220
Bug: T240672
Change-Id: I4768144d02feb6d4b6bae1a1ad39af6031f9613f
2023-06-08 17:16:36 +02:00
Bartosz Dziewoński c542b77a71 Use final action name when deciding to display navigation
Final action name can be different from the 'action' URL parameter.
This method was already used in several places in this code.

Bug: T334727
Change-Id: I803aec7c6d057616b88a8e3f4845ce8de399aa12
2023-04-17 18:54:48 +02:00
Func a5b815903d Remove jquery.tablesorter modules form the dequeue list
Preload via Skin::getDefaultModules() should be allowed to avoid
the separate load request in a fresh environment.

Also, cleanup the code and comments, 'sortable' => true is the default,
no need to specify again.

Bug: T233340
Change-Id: Icc04d2cd2dc85efab64e5c8de68e606cfad61480
2023-03-31 17:31:27 +00:00
jenkins-bot e1ebb4b196 Merge "Remove talk page tools" 2023-03-21 19:03:13 +00:00
Jon Robson b28d802693 Add languages to Minerva HTML
Bug: T331905
Change-Id: I55a25dfb8aba3d1b589a36ba4cba3bba0fe710a1
2023-03-17 20:37:32 +00:00
Bartosz Dziewoński 8c0f0c578e Remove talk page tools
Bug: T319145
Change-Id: Ib432564e1049f18334653e5eb3981f0f051582b3
2023-03-13 18:21:52 +00:00
ksarabia 973c9486d7 Remove onBeforePageDisplay for Minerva
Removes onBeforePageDisplay hook. This is no longer needed because module style is added through Skin::getDefaultModules via SkinMinerva->getSkinStyles

Bug: T281421
Change-Id: Ie0610735c96476e66629815a6611d6b34356707c
2023-02-13 13:22:35 -06:00
Bartosz Dziewoński 433458ba98 Tweak margins/paddings of Echo icons
On desktop, the "Alert" icon had more white space around it than the
"Notice" icon, and its popup displayed with a different offset.

On mobile, the combined icon jumped around while the page was loading.

Change-Id: Icdd5bc6e8478f3453b6461a35b7fb53e8ab014e9
2022-12-14 04:36:14 +01:00
Jon Robson f6f2c4f1e4 Show both Echo icons in desktop Minerva
For consistency with desktop Vector, Minerva should show two
icons. This also removes the duplicate #pt-notifications-alert
element in the skin.

Bug: T313609
Change-Id: I6449f0c29b52fd2092d63fbef23205ed8f57d50f
2022-12-14 02:08:44 +00:00
Jon Robson 028ab69a8b Echo icon should reflect seen status
Bug: T310358
Change-Id: I681a2540979ceeca677e576fca2efd91e1b80e15
2022-12-13 16:21:50 -08:00
Bartosz Dziewoński f8240fea6e Display correct numbers on the combined notification badge
Bug: T310559
Bug: T324690
Change-Id: If7568da5d34840853de43cd50a477a2aa9a18d0f
2022-12-12 23:39:25 +00:00
Ed Sanders c5976996d9 SkinMinerva.php: Improving naming and documentation of talk page overlay checks
Change-Id: Ie8bd5f591523f6eb0e1ef24cc2f61cc626fc478a
2022-10-24 00:00:42 +01:00
Jon Robson 44a93ed393 Enable associated pages tabs on Minerva
The logic to not show the "Special page" tab is no longer
needed as this is the default behaviour for this menu.

Change-Id: Ia7cd9fc699a9c4fb900b4592f0a5c5028380c7f7
2022-09-23 10:07:00 -07:00
Func 2b5b97a9ce SkinMinerva: Display generic history link when viewing deleted revision
The OutputPage->isRevisionCurrent() function would return true if
the revid is equal to 0, I think maybe it's for page preview.
I can't see any way to identify the page preview and fix in that
function, but Minerva won't display history bar during preview, so
simply check the revid should be fine.

Bug: T311341
Change-Id: I665ccebd4f048b406030057b090812448f2b01e3
2022-06-29 00:21:13 +08:00
jenkins-bot cd2fe930fb Merge "Replace Action::getActionName by IContextSource::getActionName" 2022-06-16 19:07:46 +00:00
Umherirrender 9fcc068a28 Replace Action::getActionName by IContextSource::getActionName
IContextSource::getActionName exists since 3fdfef9 and returns a cached
action name, while Action::getActionName determine the action name
every time it is called.

Change-Id: I1390e6b6ecb7606480618dd5792cb0c446e048c1
2022-06-16 18:03:54 +00:00
Jon Robson 4a71506f5c Notification icon should be localized
Bug: T310537
Change-Id: If7995350cb5d39f7d443dd922a589552b1abce3c
2022-06-13 11:42:27 -07:00
Jon Robson 31c317308c Do not use the SkinMinervaReplaceNotificationsBadge hook to add Echo
Based on work done in I7b9cf401936be2421d0ad4efe963486404d50e6a
we switch to the standard notifications menu for Echo generation

Bug: T301263
Change-Id: Id611cc07aebfb94e50bde8902cbc0627393fa926
2022-05-27 18:14:47 +00:00
Jon Robson 8c57c9c12d Enable special page tabs
For now this should be a NOOP as the existing "special" page tab
is removed, put it paves the way for using tabs on special pages.

Bug: T286466
Change-Id: Ic0b52b298d598c20987b172c81c732a31e409402
2022-05-18 21:41:00 +00:00
Thiemo Kreuz 73749969d6 Re-arrange getHistoryLink method for readability
Most notably: Bail out as early as possible.

Change-Id: Ibd22bd41e6d38a807edf45acdcd72c29537a0c06
2022-04-04 20:03:24 +00:00
Reedy b6685f9c4a Namespace SkinMinerva
Change-Id: I8f6bddac9f8cd060c551651e711ee987b8bbfbe3
2022-03-04 17:50:20 +00:00
Reedy 87bb746849 Namespace two more classes
Change-Id: Id32beb98df0f37ced858c17196517f65b64a041c
2022-03-04 16:33:46 +00:00
Reedy e4bcb8f050 Remove SkinMinervaNeue alias
Bug: T301811
Change-Id: I71c02347e43f9e4744fb1aa0c6c8e24ab0790f16
2022-02-16 18:26:10 +00:00
Tim Starling 0bfcad1b1f Move the sidebar cache to core
This cache is unnecessary since I reimplemented it in core.

Change-Id: I31e5694bebb3c73b88c11827ff3cd953233269f4
2022-02-11 11:21:31 +11:00
Jon Robson a53509354c buildContentNavigationUrls will be made internal and private
Bug: T300284
Change-Id: Ic3011e2c9763b62a74e401b3f28e53e73a6ec7ab
2022-02-08 23:18:50 +00:00
Jon Robson c88a68b38a The warningbox class is deprecated
Bug: T300306
Change-Id: I178a01a457c26981301c5171f0293402fbf9d377
2022-02-07 18:54:19 +00:00
Jon Robson 6e297a7a9b [Refactor] Use core definitions for personal menu icons
Rather than hardcoding the icons for all our menu items
let's use the definitions in core.

This also makes it easier for us to deprecate the
MobileMenu hook in future.

Rejoice at all the code this removed!

Bug: T291568
Change-Id: I69b5ca13aee018982a5ea28677d4a37e663235d4
2022-01-19 00:33:16 +00:00
Ammarpad 7ea7ed162d Remove usage of SkinTemplate::injectLegacyMenusIntoPersonalTools()
Bug: T298214
Change-Id: I9dc4c565419b38b557c0f22202ce58641bd210cf
2022-01-05 10:05:05 +01:00
jdlrobson f9a8703a64 Minerva uses core page title handling
Bug: T265892
Change-Id: I2ffdedd64414ffb3c6e441391a75fd6e744847a4
2021-12-20 19:39:42 +00:00
jenkins-bot 1b9d92e17d Merge "Wrap the sitenotice with div element as other skins do" 2021-12-15 21:35:58 +00:00
Func b4b2f4ded3 Wrap the sitenotice with div element as other skins do
Change-Id: Ifea461636f9000527556dc2881f83f00be5bff76
2021-12-10 11:20:35 +00:00
vladshapik 023c5046d3 Avoid using User::getOption
Remove using of User:getOption since this method
will be hard-deprecated. Now it is soft-deprecated.

Bug: T296083
Change-Id: I9f762cf27d7c778c8c391cde1409b510bd3e4e67
2021-11-30 12:54:03 +01:00
Clare Ming 11b703f616 Fix history link
- Show history link for view pages only.

Bug: T295772
Change-Id: I01b4aa6975543fbfe015ff9cd439f82b5baf3e5b
2021-11-29 13:34:09 -07:00
jenkins-bot a174538d21 Merge "Replace usage of the methods IContextSource::getWikiPage & canUseWikiPage that will be deprecated to WikiPageFactory usage" 2021-11-23 14:04:55 +00:00
Roman Stolar a0e560ffe6 Replace usage of the methods IContextSource::getWikiPage & canUseWikiPage that will be deprecated to WikiPageFactory usage
Bug: T275710
Change-Id: Ia5cff18a6d9417d8e6960f2d20f7b41174f97341
2021-11-22 12:50:11 +02:00
tacsipacsi aaf0159174 Don’t add any <h1> to main pages for anons
Main pages usually feature a welcome message on their own, and adding
the standard <h1> is redundant at best. (Or, if there’s no welcome
message, the lack of a page title also indicates that it’s the main
page.) Also, it has ever been the case since dd00aa5a601e that no page
title is visible on the main page (before 9a39d1e492, an empty <h1>
was present, now nothing will be added).

Bug: T296109
Change-Id: I1e79dc385c4dbe8413bcb32a52b8675aabf8eea0
2021-11-20 12:57:57 +01:00
Clare Ming dddde1c208 Fix banners to show CentralNotice
- Restore init of banner array to include needed selector.

Bug: T296077
Change-Id: Id1cec46eadcd057062c791a30db8ca40b35224b9
2021-11-19 10:17:12 -07:00
jdlrobson dd52f75a13 Remove SkinMinerva class properties
Follow up 7530f1c with some refactors
to remove the $pageActionsMenu and
$contentNavigationUrls properties by
calling once in getTemplateData

Bug: T293815
Change-Id: Ia7877abbecf41bbae7627ce7924d0f0871efa479
2021-11-12 22:34:20 +00:00
Clare Ming 7530f1c145 Remove MinervaTemplate class
- Update SkinMinerva class to output data previously handled by MinervaTemplate.
- Update relevant templates with updated data keys.

Bug: T293815
Change-Id: I33df396b07c4d2d9c1c5743d90dc54cdbd3345af
2021-11-12 11:39:58 -07:00
jenkins-bot 280b7b28f7 Merge "Fix empty title for logged-out users using Minerva skin" 2021-11-12 16:32:29 +00:00
jenkins-bot 5f42f3f76a Merge "Instrument mobile talk page clicks" 2021-11-08 19:20:56 +00:00
jdlrobson 1acb3542a5 Instrument mobile talk page clicks
This results in log events for clicking the following on a talk page:
* Read as wiki page
* Section headings
* the "add section" button

To test install WikimediaEvents and set
$wgWMEMobileWebUIActionsTracking = 1;

Bug: T294738
Change-Id: I8dbad7f4e72cfd081896480ba142b4e1e3029bcd
2021-11-08 09:17:29 -08:00
xiplus 9a39d1e492 Fix empty title for logged-out users using Minerva skin
Do not set page title to empty string if user is logged out

Bug: T265892
Change-Id: I38172860a6e4b58f772cc6713a0fd07f5d8524ea
2021-11-08 12:17:24 +08:00
Clare Ming 55189058be Move history link data into SkinMinerva::getTemplateData and relevant template
- Remove usage/references to MinervaTemplate::getHistoryLinkHtml, html-minerva-lastmodified
- Add data key for history.mustache template.
- Update footer template to use new data key.

Bug: T292554
Change-Id: Id5fbf61ba181a0088a25e77175b808362963c63b
2021-11-01 21:04:12 +00:00
bwang 2be42b314f Refactor SkinMinerva::getSecondaryActions to match getPageActions()
Change-Id: Ia87fb08204be56e665cd97c57e6ac7df4cb1a02d
2021-10-26 22:24:04 +00:00
jdlrobson b41c7ca7be Inline PageActionsMenu template
Avoid usage of an additional TemplateParser

Bug: T293813
Change-Id: I1cef873d8a3226c9180a0731834f0ecf961f7ece
2021-10-25 16:02:08 -07:00
jenkins-bot 2a60efef79 Merge "Remove MinervaTemplate::getSecondaryActions" 2021-10-25 19:32:53 +00:00
bwang 95abf6b9af Remove MinervaTemplate::getSecondaryActions
Bug: T291875
Change-Id: Iefff2007c561adfd5886f9c0521341b3922e7653
2021-10-22 14:11:54 -05:00
jdlrobson 17968826fa Move components files up one level into Skins directory
Follow up to I4c2e115451c0a76c742734730712814c1f1d838d.
This will allow us to load the templates directly into skin.mustache
via {{>PartialName}}

Templates partials can only be resolved relative to the folder given
to the TemplateParser.

Change-Id: I5783d49c25d2efcf4781dd912500bf8b413b8cb6
2021-10-22 18:45:38 +00:00
jdlrobson c407d92d5d Remove getPageActionsHtml and related methods
Bug: T293813
Change-Id: I90e45cac13a13c2ce18af16274e327d951868433
2021-10-22 07:42:56 -07:00
jdlrobson 5a7a9c9c31 Drop wgMinervaPageActions
Remove code per spike outcome (T226490#7438685)

- This configuration option is never used in Wikimedia production
- isTalkAllowed content body is merged into isAllowed. Resulting code
is more readable.
- isAllowed('talk') still returns false on main page for anonymous users
which is the current behavior. Even on sv.m.wikipedia.org where talk pages
are shown to anonymous users, we do not show the talk page on the main page.
Add a comment pointing to the associated phabricator ticket

Bug: T226490
Change-Id: I9f34817c5ad654a6a66fe6156850a3e3fee881a7
2021-10-21 17:25:37 +00:00
jdlrobson a7b66f6f63 Remove MinervaTemplate::getContentHtml
* Move method to SkinMinerva
* Turn preparePageContent into a getter that returns the subject
page
* Use getSubjectPage in template

For mobile special pages this now means the page has two .content elements
On those pages I've disabled the initial content element. It also means
various .content <heading> and .content ul  rules now apply that need to be
disabled.

While testing several other issues were taken care of - for example
the h2 in errors

Depends-On: I7761396d6a33830f279742be01240796573556a7
Bug: T291871
Change-Id: I13bc4b5dae7aed86eca31ef306212365e1759481
2021-10-15 20:49:23 +00:00
jdlrobson f49eefbf84 Improve support in Minerva for addPortletLink
* Use skin registration and set skin options as and when needed
* Set link text-wrapper
* Simplify addPortletLink hook
* Update modifications to apply to items added prior to the hook

Bug: T240910
Change-Id: Ic806adf3de6490ba9da11e8968a61b3d0acd93bc
2021-09-23 22:05:36 +00:00
Nicholas Ray 6df49e3da4 Add alt attribute to logo
* Adds alt attribute with a value of the `mobile-frontend-sitename`
(previously called `mobile-frontend-footer-sitename`). The message was
changed because this affects both the footer and the header's logo.

* Adds a `minerva-footer-logo` class to the logo in footer.mustache in
preparation for changing that element from an h2 to a div. Given caching
issues (old CSS with new HTML; new CSS with old HTML are both
possibilities), we need to do this in two separate deploy cycles.

Bug: T288362
Change-Id: I3ecbf8fdcae72a0ded7f60c559259f312b8ef15d
2021-09-22 02:01:42 +00:00
Ammarpad f9ab46b917 Remove unused template data
* internalBanner
* prebodyhtml

Bug: T290342
Change-Id: Ibd4d3f07e120874160274ce3295c788fdd33a7a5
2021-09-07 06:37:20 +00:00
libraryupgrader 218151025e build: Updating dependencies
composer:
* mediawiki/mediawiki-codesniffer: 36.0.0 → 37.0.0

npm:
* svgo: 2.3.0 → 2.3.1
  * https://npmjs.com/advisories/1754 (CVE-2021-33587)
* postcss: 7.0.35 → 7.0.36
  * https://npmjs.com/advisories/1693 (CVE-2021-23368)
* ws: 7.4.5 → 7.5.3
  * https://npmjs.com/advisories/1748 (CVE-2021-32640)
* trim-newlines: 3.0.0 → 3.0.1
  * https://npmjs.com/advisories/1753 (CVE-2021-33623)
* normalize-url: 4.5.0 → 4.5.1
  * https://npmjs.com/advisories/1755 (CVE-2021-33502)
* prismjs: 1.23.0 → 1.24.1
  * https://npmjs.com/advisories/1762 (CVE-2021-32723)

Change-Id: Idfecb28ef49b193ba78b3f7b1335d4d5cb2862cd
2021-07-23 18:37:41 +00:00
DannyS712 55206bd705 Remove SkinMinervaDefaultModules hook
Deprecated in core version 1.36

Bug: T266882
Change-Id: I99bd07dab4f27e2c119b80c1ca3383134740050d
2021-07-05 15:55:21 +00:00
Timo Tijhof 0d61c78f73 Move skins.minerva.content.styles into skins.minerva.base.styles
This could be made even simpler by not using a LESS varialbe for
hacks.less, but loading it conditionally through the moduel def.
But, as a first step we can merge the two as-is.

Given that the subject and target are always referenced together
in page views, there is no need to keep an alias around. However,
I'm keeping it anyway so as to not produce any
`/* {"skins.foo":"missing"} */` appendix to the stylesheet response
for these cached URLs.

Bug: T266361
Change-Id: I8578faab8ca32bd49be90711cbd5e182763b8065
2021-06-21 17:50:37 +00:00
David Lynch 5fb7c116b7 Add hook that allows suppression of the talk page overlay
The hook lets us hand off the decision of whether to suppress this to
DiscussionTools, which has a slightly complex set of feature-tests to do
before deciding. It seems better to leave this disabled only when DT
will actually be stepping in.

Bug: T280051
Change-Id: If6b70fb6d801ac04fa3b70c153a2136d2e302f28
2021-06-10 11:35:26 -05:00
Jdlrobson 8651df02bb Replace categories button with HTML rendering
Bug: T246049
Change-Id: Id8c7493a525844b43c1628a1f4f09ae716ece2ba
2021-05-14 20:34:59 +00:00
bwang 0071a28239 Ensure suppressed user pages look like unregistered users when viewed without proper permissions.
This patch removes the user page tagline (i.e. "Blocked joined 7 days ago"), updates the user page heading (i.e. "Blocked" becomes "User:Blocked") and removes user specific page actions (i.e. Contributions, User groups, the page actions submenu, etc) for certain user pages.

This patch also adds a new method to SkinUserPageHelper for use in the ToolbarBuilder.

Bug: T268961
Change-Id: I920e0770caa0a1b6d3323e2e3111e5df4f1f051d
2021-05-05 10:29:54 -05:00
ZabeMath 4cdd0af8bf Allow Users with permissions to do expanded actions in Minerva on mobile
Allow Users with the needed permissions to delete, protect or move pages in Minerva on mobile version.

Bug: T231291
Change-Id: I1e438b7d3683d288a8a6c5a9f5dcea6b3b3d9f71
2021-04-26 18:51:32 +00:00
James D. Forrester 592e1151b7 Use User->isRegistered(), not deprecated isLoggedIn()
Bug: T270450
Change-Id: I60f714f42848898cf27aa83da92ac1c691fe5ead
2020-12-17 19:09:15 -08:00
libraryupgrader 68b3bcd63f build: Updating mediawiki/mediawiki-phan-config to 0.10.5
Change-Id: I69ee97acbdf8a1054b3be704ed9d7b87d3ed7152
2020-12-09 20:41:19 +00:00
jdlrobson 0e61c55ea1 Minerva no longer needs to remove mediawiki.toc.styles
As of db3c8ea16b3 the mediawiki.toc.styles module is no longer
loaded by the skin, so Minerva no longer needs to remove it.

Bug: T252774
Change-Id: Ia2df978e2d0349a55620ef45f8c0827134b7c74d
2020-12-08 14:16:54 -08:00
libraryupgrader 450f70d24b build: Updating mediawiki/mediawiki-codesniffer to 33.0.0
The following sniffs are failing and were disabled:
* MediaWiki.Commenting.PropertyDocumentation.WrongStyle

The following sniffs now pass and were enabled:
* MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName

Change-Id: Ib605f800c2ae0e521c034c1f49d98cbca546b720
2020-11-05 16:18:11 +00:00
jenkins-bot 9c3e5c9299 Merge "Deprecate SkinMinervaDefaultModules hook" 2020-10-30 01:13:30 +00:00
jdlrobson d69de05807 Deprecate SkinMinervaDefaultModules hook
No longer used by anything.
So long... farewell...

Bug: T256086
Change-Id: Ic3439ca6f466351518d4b9e0feea405cb94e6c5e
2020-10-29 10:01:23 -07:00
jdlrobson c3b93e14b0 Simplify footer and logo generation
The data already provided by SkinMustache makes the existing
Minerva code redundant.

* html-after-content functionality equivalent to dataAfterContent value
* Rename license and last modified to have html-minerva prefixes and promote
to top level data object. This allows us to distingusih Minerva values from core
values.

Note: previously the logo used srcset to ship a 1x logo but these
were dropped during the desktop improvements work.

Bug: T256083
Change-Id: I7b2cd5181eae67b345f6686e3389a76a12e3b1a1
2020-10-16 23:41:34 +00:00
jdlrobson 78839e00e8 Minerva should use the SkinMustache class
This begins the migration of Minerva to SkinMustache with the smallest
possible change.

In future, we'll be able to eventually wean ourselves off of the
MinervaTemplate class and considerably reduce the code in Minerva

Bug: T256083
Change-Id: Id0f617cfdb698754addc79b26491b9d846513c87
2020-10-02 13:35:08 -07:00
mainframe98 5857a9f909 Specify the responsive option rather than manually specifying viewport
I6e69b482cdbc adds a viewport with the same value as defined by Minerva.

Bug: T258290
Depends-On: I6e69b482cdbc49c09adc6f7cee54f5e17b7c92c4
Change-Id: Ie8ed80f734b20a16bc1c70a94d40290909180c3b
2020-08-03 21:14:29 +02:00
Peter Ovchyn 271fb28d99 Load mediawiki.page.ready on Minerva
Disable sortable and collapsible during mediawiki.page.ready initialisation

Add onSkinPageReadyConfig hook that overrides sortable and collapsible values.

Adds 1.74kb of JS to all page loads.

Bug: T257265
Bug: T250851
Depends-On: I0dc38e74052027f26a70d58b5f520e5830e0d55d
Change-Id: I81ff55d080c8c4a40f425ca7d0fc4fda322055dd
2020-07-29 20:57:52 +00:00
Ammar Abdulhamid 1a45b1409c Remove usage of deprecated Skin::getRevisionId()
OutputPage has similar method and they are being used
interchangeably here. Let's stick with one.

Bug: T257992
Change-Id: Ia5a0fbf114f6a1fec6fb85e01a408edae8a5badb
2020-07-29 16:09:47 +01:00
Ammar Abdulhamid f9b5ca1f26 Minerva: Remove usage of two deprecated methods
* BaseTemplate::getToolbox()
* BaseTemplate::getPersonalTools()

Bug: T256272
Change-Id: I7de2be43e1fbe94c10cbe8bba49adc07692f9219
2020-06-26 12:43:27 +01:00
jenkins-bot 5e6e294083 Merge "Allow projects to disable Mobile welcome message" 2020-06-23 16:11:20 +00:00
Ammar Abdulhamid dbc3bdee1d Allow projects to disable Mobile welcome message
Bug: T255682
Change-Id: I62f2c798656005796d846067f67ad26812202e20
2020-06-23 10:44:13 +01:00
Ammar Abdulhamid 2bb3633530 Minerva: Use OutputPageBodyAttributes hook to add body attributes
This means dropping usage of Skin::addToBodyAttributes method from
parent Skin class to pave way for its deprecation/removal.

Bug: T255698
Change-Id: Idab13c37002ac5663f292e4f4b4ff51eb7573fda
2020-06-21 09:21:07 +01:00
Jdlrobson 4f021c79f0 Revert "Drop MinervaEnableSiteNotice"
This reverts commit 33e5c1eb79.

I talked to Gergo (tgr) about this and he's convinced me
that probably I want to be more conservative 
and incremently roll the sitenotices
out first. With that in mind I'm going to revert this change
and do a config flag instead.

Bug: T254391
Change-Id: If0f214d23a012fb4ae3e1dff1728f746a22f142a
2020-06-04 22:39:36 +00:00
jdlrobson 33e5c1eb79 Drop MinervaEnableSiteNotice
This will make site notices display across the site as intended. The config
flag doesn't seem warranted - site notices should display across all skins
as they may contain important information.

This is preventing wikidata page banners from displaying in Minerva.
If this is controversial I can do a config-only change for Wikivoyages

Bug: T254391
Change-Id: I34c5e762b967ea94e33025e87f3446e8e029bc91
2020-06-04 08:38:03 -07:00
Reedy 0267700d05 Fix function case mismatch
Change-Id: I0a3868e5fdc511b523c3839866d1c0b173670cea
2020-05-29 15:16:45 +00:00
Reedy 2d7150125c Fix PSR12.Properties.ConstantVisibility.NotFound
Bug: T253169
Change-Id: I35b646522df6f0ec14ca8fee718937cc8cf44ce9
2020-05-19 22:59:27 +00:00
Bartosz Dziewoński a1e75213da Fix posting talk page replies on pages with subsections
The MobileFrontend section numbers that were used here only count
top-level sections, but this value was passed to code in
MobileFrontend's TalkSectionOverlay#onSaveClick, which uses an API
expecting the standard MediaWiki section numbers.

Extract the section number from the section edit link, like we do
in mobile.init/editor.js in MobileFrontend.

Also, disable the special talk page view unless we're viewing the
latest revision of the page. That could also lead to posting in the
wrong section, as sections are often added and removed, which changes
the numbers.

Bug: T252828
Change-Id: I553a508658804dd8672f2268b7118f77458a9dba
2020-05-14 22:57:00 +02:00
Volker E c9461c9dd8 Replace skins.minerva.mainMenu.advanced.icons with OOUI icons
Additional changes:
* Address a fixme relating to the overflow icon and move some AMC styles
out of the critical path for non-AMC pages

Note about ellipsis:
The class mf-mw-ui-icon-rotate-clockwise cannot be used as it's part of
MobileFrontend and loaded via JS. Minerva must work without MobileFrontend
and this rotation is needed without JS.

Bug: T244444
Change-Id: Ifd02c50305cf036dd6df640d778678668507e5eb
2020-05-01 12:18:35 -07:00
Reedy 01f824f684 Fix namespace of SkinUserPageHelper
Allows autoloading of file

Change-Id: Ife276b5802e3cdcfd5789a7a91684317c81d5bb3
2020-05-01 02:29:54 +01:00
Renamed from includes/skins/SkinMinerva.php (Browse further)