* Changes to content typography (fonts, line-height, etc.). See
https://www.mediawiki.org/wiki/Typography_refresh for further information.
* ResourceLoader: mw.loader.using() now implements a Promise interface.
+* Add new hook ChangesListInitRows accessed via ChangesList::initChangesListRows.
+ If called by the ChangesList consumer this gives extensions a chance to batch
+ process the result set prior to rendering.
=== Bug fixes in 1.23 ===
* (bug 41759) The "updated since last visit" markers (on history pages, recent
$unpatrolled: Whether or not we are showing unpatrolled changes.
$watched: Whether or not the change is watched by the user.
+'ChangesListInitRows': Batch process change list rows prior to rendering.
+$changesList: ChangesList instance
+$rows: The data that will be rendered. May be a ResultWrapper instance or
+ an array.
+
'Collation::factory': Called if $wgCategoryCollation is an unknown collation.
$collationName: Name of the collation in question
&$collationObject: Null. Replace with a subclass of the Collation class that
return '<div class="mw-changeslist">';
}
+ /**
+ * @param ResultWrapper|array $rows
+ */
+ public function initChangesListRows( $rows ) {
+ wfRunHooks( 'ChangesListInitRows', array( $this, $rows ) );
+ }
+
/**
* Show formatted char difference
* @param int $old Number of bytes
$counter = 1;
$list = ChangesList::newFromContext( $this->getContext() );
+ $list->initChangesListRows( $rows );
$rclistOutput = $list->beginRecentChangesList();
foreach ( $rows as $obj ) {
$list = ChangesList::newFromContext( $this->getContext() );
$list->setWatchlistDivs();
+ $list->initChangesListRows( $rows );
+ $dbr->dataSeek( $rows, 0 );
$s = $list->beginRecentChangesList();
$counter = 1;