Use the SingleMenuEntry constructor rather than the static create
method so that items can not only supply class names, but also with
array to string normalization.
This is useful so that extensions can add links with JS interaction,
such as with Ib3fe1063187
Bug: T242467
Change-Id: Ice909aab7f9ce49f36a954ac1bfce5eef14d30fc
This was inadvertently added in
I3c08e804cbb778f025f45a184801cd7b1738c035 and is without
an icon.
Bug: T336838
Change-Id: Ie6a588297a586328faee514074e096e78989547d
Follow up to 13d536a26
The current behaviour is unexpected and led to T336838. It also
seems like at some point the instrumentation for these menu items
also broke.
Going forward it would be easier to simply show any menu item which has
an icon. Also make sure that all menu items have a data-event-name
attribute so clicks to these menu items are captured.
Fixes:
* Contribute link is now not shown for anonymous users
as it was before
Changes:
* Ordering of menu items changes - settings is now below username
which is consistent with user
* All menu items are now tracked via event names consistent with
desktop.
Bug: T321746
Bug: T336838
Change-Id: I3c08e804cbb778f025f45a184801cd7b1738c035
And more generally remove `@throws` comment used for unchecked
exceptions, callers must not catch them.
Bug: T328220
Bug: T240672
Change-Id: I4768144d02feb6d4b6bae1a1ad39af6031f9613f
Make it behave just like the normal page actions menu, taking
its data from the core toolbox definition. This will allow it to
be extensible by extensions who declare an icon field for their
menu item.
Follow up to Ifd10da690a33e7fc5790a7b444b62fbfd1b95d98
Depends-On: I6881785676e2909434991b633ac181d05a272352
Bug: T335603
Change-Id: I88ac38acf22fbce0c3e0a4f4c6efcaef4ca49907
Adjust the behaviour so the existence of an icon is all that is
needed to populate this menu. This will allow discussion tools
to extend the menu with their own item(s)
Depends-On: If2972da4456705f4a2f0cea90e73d0207a36a306
Depends-On: Ia9a9a08c68be652c16692db30e0efbe02fbfba0d
Depends-On: I2b85b9ac6997d07ed4ff995693f083d0ad1216dc
Bug: T332730
Change-Id: Ifd10da690a33e7fc5790a7b444b62fbfd1b95d98
After refactoring and simplifying the menu building, the Nearby option wasn't getting inserted into the Group.
Bug: T312864
Change-Id: If52ac42f64154e015eab8f97393e4255db23473f
Hard deprecated the Group::insertAfter() function because it is not used in the Mediawiki codebase
Bug: T311894
Change-Id: I209d3fd492713425a2727fd48c5870f983a39f9b
Added the "Change block" and "Unblock user" to the array of possible menu entries for the overflow menu. These buttons will only appear when a user is already blocked.
Bug: T308570
Change-Id: I987083cfeb20a0c691d3fc631a9c844647fec9bf
Depends-On: If60a1194d63fff2b7b5ae1565be25a3b7b44fdf1
* Created a buildMenuEntry function
* Replaced all Group::insert() functions with Group::insertEntry()
* Added a trackable parameter to check if a menu entry will be trackable
* Removed the MenuEntry class
* Removed the MenuEntryTest class
* Removed the Group::insert() function
* Changed tests in GroupTest to test Group::insertEntry() function
Bug: T221004
Change-Id: I39bed4e9a9b09f904cb3e5d78ccb3e6e175981a8
- Remove cached HTML relating to heading change
( I2ffdedd64414ffb3c6e441391a75fd6e744847a4)
- Update invalid instruction for selector in footer (I0bfc7f977cdaf5ce8873103346c64121d704b86c)
It appears this rule cannot yet be removed.
- Update classes for contributions icon on user pages
(I6c908acd70c0dca5bcb1754d1b25d3da2389feb8)
Change-Id: I271abf3d29dfcfd19d654514fb3f6d6e257505ab
Check the messages first and only parse the Title if needed
Use local variable to avoid repeated call to functions
Change-Id: I376d06b807183fb23cb07ad33ee54b387beea6f9
* Prefer Title::makeTitle in unit tests where the title is known,
this avoids title parsing and can improve the test performance.
* Use Title::makeTitle for the user page like done in User::getUserPage
Change-Id: I3901a6ed208a5ff90b216d01d3c4962cdcb48db1
Minerva already overrides the text label for the Home menu item.
To allow other extensions to override it again, we can also consult
the msg key.
Bug: T291568
Change-Id: I3107a6d1e6ace26c7ab9c49c49768d2adcda8792
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
There is still a lot of places that need either an Authority or still
an actual User object. This patch changes the usages that can be
changed right now (almost) without any codechange.
The only additional change is the removal of an unused constructor
argument.
Change-Id: I0fbb3c2cc4cea7fba135d92b04421b0563c0f0c8
isRegistered() is a method in the much more narrow UserIdentity
interface. This change makes it easier to move code away from the
problematic User "god" class in core.
Change-Id: I99cb72591f073568f84bd1fd436381f3f11f3140
Remove using of User:getOption since this method
will be hard-deprecated. Now it is soft-deprecated.
Bug: T296083
Change-Id: I9f762cf27d7c778c8c391cde1409b510bd3e4e67
At this time, the label is the same as "portal-url". It's not allow
to localize. Use "portal" as the label.
The code is copied from insertDisclaimersItem() in the same file.
Bug: T239022
Change-Id: I1d3bc04333aabcf8c704241ca882d6b863b98968
Turns out user page is using UserNamespaceOverflowBuilder instead of
DefaultOverflowBuilder.
This change is added move, delete, and protect entries to
UserNamespaceOverflowBuilder::getGroup, so those options would appear in
overflow menu on user page.
Bug: T283549
Change-Id: I8a22b57aaa195773ae9e82bd1e01f323a2c0e6e1