jenkins-bot has submitted this change and it was merged.
Change subject: Add wikipage.categories hook
......................................................................
Add wikipage.categories hook
This will be especially useful for HotCat.
Bug: T53583
Change-Id: Id944029df180c80502840c118a58013ebb717e1f
---
M includes/skins/Skin.php
M resources/src/mediawiki.action/mediawiki.action.edit.preview.js
M resources/src/mediawiki/page/ready.js
3 files changed, 23 insertions(+), 2 deletions(-)
Approvals:
Jdlrobson: Looks good to me, approved
jenkins-bot: Verified
diff --git a/includes/skins/Skin.php b/includes/skins/Skin.php
index dbb7c7f..83f119d 100644
--- a/includes/skins/Skin.php
+++ b/includes/skins/Skin.php
@@ -560,7 +560,7 @@
$classes .= ' catlinks-allhidden';
}
- return "<div id='catlinks' class='$classes'>{$catlinks}</div>";
+ return "<div id='catlinks' class='$classes'
data-mw='interface'>{$catlinks}</div>";
}
/**
diff --git a/resources/src/mediawiki.action/mediawiki.action.edit.preview.js
b/resources/src/mediawiki.action/mediawiki.action.edit.preview.js
index 013d34f..1d4d0e9 100644
--- a/resources/src/mediawiki.action/mediawiki.action.edit.preview.js
+++ b/resources/src/mediawiki.action/mediawiki.action.edit.preview.js
@@ -174,7 +174,9 @@
);
}
if ( response.parse.categorieshtml ) {
- $( '#catlinks' ).replaceWith(
response.parse.categorieshtml[ '*' ] );
+ $content = $( $.parseHTML(
response.parse.categorieshtml[ '*' ] ) );
+ mw.hook( 'wikipage.categories' ).fire(
$content );
+ $( '.catlinks[data-mw="interface"]'
).replaceWith( $content );
}
if ( response.parse.templates ) {
newList = [];
diff --git a/resources/src/mediawiki/page/ready.js
b/resources/src/mediawiki/page/ready.js
index 9505bdd..4385a2e 100644
--- a/resources/src/mediawiki/page/ready.js
+++ b/resources/src/mediawiki/page/ready.js
@@ -70,6 +70,25 @@
} );
}
+ $nodes = $( '.catlinks[data-mw="interface"]' );
+ if ( $nodes.length ) {
+ /**
+ * Fired when categories are being added to the DOM
+ *
+ * It is encouraged to fire it before the main DOM is
changed (when $content
+ * is still detached). However, this order is not
defined either way, so you
+ * should only rely on $content itself.
+ *
+ * This includes the ready event on a page load
(including post-edit loads)
+ * and when content has been previewed with LivePreview.
+ *
+ * @event wikipage_categories
+ * @member mw.hook
+ * @param {jQuery} $content The most appropriate
element containing the content,
+ * such as .catlinks
+ */
+ mw.hook( 'wikipage.categories' ).fire( $nodes );
+ }
} );
}( mediaWiki, jQuery ) );
--
To view, visit https://gerrit.wikimedia.org/r/219629
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Id944029df180c80502840c118a58013ebb717e1f
Gerrit-PatchSet: 5
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: TheDJ <[email protected]>
Gerrit-Reviewer: Daniel Friesen <[email protected]>
Gerrit-Reviewer: Edokter <[email protected]>
Gerrit-Reviewer: Fomafix
Gerrit-Reviewer: Jack Phoenix <[email protected]>
Gerrit-Reviewer: Jdlrobson <[email protected]>
Gerrit-Reviewer: Krinkle <[email protected]>
Gerrit-Reviewer: TheDJ <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits