If a changeslist item has an expiry date, add a grey clock icon
after the page title, with a tooltip indicating when the item
expires.
Bug: T250212
Change-Id: I38f8c85321cf257eeea8de5a3bd73bbc0b5ea393
* ProtectedHookAccessorTrait provides protected getHookContainer() and
getHookRunner() methods, getting them from the global service
container. The point of this is to ease migration to DI by ensuring
that call sites ask their local friendly base class rather than
getting a HookRunner from the service container directly.
* Migrate ChangesList and subclasses from Hooks::run() to the new system,
as a pilot for full migration.
Change-Id: Ic2d408fdb108087d81d0981aa670b35e0a6bb0ce
Hard deprecation of passing Revision objects will follow soon,
but until that is ready core calls can be updated
There is some code cleanup that could be done around the calls, but
to simplify review no other changes are made.
Bug: T249561
Change-Id: Ifcfb3811650decffeaa87dc033c41fd1710b47a6
The change to ChangesList::revDateLink is not backwards compatible,
because the method was marked as @internal
Due to a breaking change in HistoryPager::revLink, and the fact that
it didn't have a visibility defined, it has been made private
Bug: T246284
Change-Id: I2f1309fda1c312a6cf634de48ad0bbcfcb2d83ae
The contributions and history page was showing some semicolons in unexpected places.
These unwanted semicolons are now supressed by reverting to a new standalone element
in exactly the same place as the previous semicolon. This avoids the issue of
ordering that we hit before.
I have documented the behaviour of the semicolon separator in contribpager pages
My seemingly harmless change in Ic4508788299a13c4c830f447141d17d99ebe002e
For future generations I have encapsulated what I've learned in extensive
comments which seem important given the information I have acquired while
working on this patch.
Bug: T233649
Change-Id: I9723ead1815685a9cbcccf2c4e2f3ffff36dcee3
Entries such as "User creation log" on Special:RecentChanges can
be wrapped or not wrapped in parentheses
Bug: T219348
Change-Id: Ic764081497dbe8d6d9e5bff6f8a1ceeac4b306e2
This allows us to remove many suppressions for phan false positives.
Bug: T231636
Depends-On: I82a279e1f7b0fdefd3bb712e46c7d0665429d065
Change-Id: I5c251e9584a1ae9fb1577afcafb5001e0dcd41c7
These filters provide a shortcut to see or highlight all entries associated
with a subject or a talk namespace.
They are defined as real filters on the client-side and are superset
of all other namespace filters.
They are expanded to the list of namespaces they represent on the server-side.
Bug: T201520
Change-Id: Id9e04a38c2d7c8165c27af98959aa5715225faa8
Log entries are wrapped with parenthesis - not hardcoded into HTML
causing stray brackets in Minerva where this element is floated.
Has no impact on other skins
In addition to this the entire log entry item is wrapped in a new
span mw-changeslist-log-entry to ensure the text is recognised
as a whole entity - on Minerva floats were leading to the action
and the action object being separated (e.g. uploaded and "File:Name
were separated
Bug: T229360
Change-Id: Idae997b15f68bb0dfcaa857f7458ba3497233d41
Fix five instances of PhanPluginDuplicateConditionalNullCoalescing;
escape the rest for now.
Bug: T219114
Change-Id: Ic4bb30c43c5315ce6b878b37b432c6e219414f8b
ContribsPager and HistoryPager both duplicate efforts.
Instead move this code into a new static function inside
ChangesList that is shared between the two.
Bug: T216420
Change-Id: I0025d2e515d086b60670bd3f37307caac8d662a2
The styles that we are applying on changelist pages should also
apply on diff pages. This generalises the rules into a new
module.
To avoid problems with cached HTML mediawiki.special.changeslist
temporarily loads resources/src/mediawiki.interface.helpers.styles.
This will be removed after the change has been in production for a
week.
Bug: T212613
Change-Id: I6aad563e48f41c783df8b176a4f437e60a1255cc
This method was deprecated in MediaWiki 1.27 and in MW 1.26, an alternative
method was introduced (getArticleLink). Per the code search tool here:
https://codesearch.wmflabs.org/search/?q=insertArticleLink%5C(&i=nope&files=&repos=,
only SimpleChanges and RecentActivityFeed extensions still use this method and
patches have been made to stop the use of these deprecated methods, see;
~ Ia80496c02ee5d0cb7bf9bdb1b336ea2699325d4c (RecentActivityFeed extension)
~ I5a9359f107da6a92b5f52e58879b540480ed2443 (SimpleChanges extension)
Once the above patches are merged, this patch can be reviewed and merged
as there will no longer be any usage of the deprecated method per code search
tool.
Change-Id: I166a7e5af7d8d3df60208583b6ce002bf65305a6
Use the existing class mw-changeslist-links to visually separate
the user tools in CSS rather than in the HTML.
Bug: T205581
Change-Id: I024c8298ca5da753d96ec392be05d4530bb3ffa9
Rather than use actual text, move the parentheses that serve as
presentation into the CSS.
Bug: T205581
Change-Id: I4ae645ca0edf0001a20c228f90f8d43a10cfff71
Construction of the highlight containers was moved to the backend, but
setupHighlightContainers() also aggregates the CSS classes used for
highlights for grouped entries in enhanced mode.
Move that to the backend too, and get rid of setupHighlightContainers().
Also move the namespace classes to getHTMLClassesForFilters() so that
they get picked up too, and pick up classes for tags separately because
the way they're handled is weird.
Bug: T197168
Change-Id: I4c374f82e7d128025f4e2b2f39b0adba14b76ef3
Create the highlight container div in the backend for
both regular and enhanced result view, so we spare
the load in the frontend.
Bug: T197168
Change-Id: I36bd7b7c4c124d305ac7b07e824dc2a58e152be4