mirror of
https://gerrit.wikimedia.org/r/mediawiki/skins/MinervaNeue
synced 2024-11-24 22:25:27 +00:00
Merge "Remove usage of global event emitter from Minerva"
This commit is contained in:
commit
d9831e8ac3
|
@ -2,7 +2,8 @@
|
|||
var BackToTopOverlay = M.require( 'skins.minerva.options/BackToTopOverlay' ),
|
||||
backtotop = new BackToTopOverlay(),
|
||||
features = mw.config.get( 'wgMinervaFeatures', {} ),
|
||||
browser = M.require( 'mobile.startup/Browser' ).getSingleton();
|
||||
browser = M.require( 'mobile.startup/Browser' ).getSingleton(),
|
||||
eventBus = M.require( 'mobile.startup/eventBusSingleton' );
|
||||
|
||||
// check if browser user agent is iOS (T141598)
|
||||
if ( browser.isIos() || !features.backToTop ) {
|
||||
|
@ -12,7 +13,7 @@
|
|||
// initialize the back to top element
|
||||
backtotop.appendTo( 'body' );
|
||||
|
||||
M.on( 'scroll', function () {
|
||||
eventBus.on( 'scroll', function () {
|
||||
if ( $( window ).height() - $( window ).scrollTop() <= 0 ) {
|
||||
backtotop.show();
|
||||
} else {
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
var loader = M.require( 'mobile.startup/rlModuleLoader' ),
|
||||
features = mw.config.get( 'wgMinervaFeatures', {} ),
|
||||
overlayManager = M.require( 'skins.minerva.scripts/overlayManager' ),
|
||||
eventBus = M.require( 'mobile.startup/eventBusSingleton' ),
|
||||
isAnon = mw.user.isAnon();
|
||||
|
||||
// check the categories feature has been turned on
|
||||
|
@ -14,7 +15,7 @@
|
|||
overlayManager.add( /^\/categories$/, function () {
|
||||
return loader.loadModule( 'mobile.categories.overlays', true ).then( function ( loadingOverlay ) {
|
||||
var CategoryOverlay = M.require( 'mobile.categories.overlays/CategoryOverlay' );
|
||||
M.on( 'category-added', function () {
|
||||
eventBus.on( 'category-added', function () {
|
||||
window.location.hash = '#/categories';
|
||||
} );
|
||||
|
||||
|
@ -22,7 +23,8 @@
|
|||
return new CategoryOverlay( {
|
||||
api: new mw.Api(),
|
||||
isAnon: isAnon,
|
||||
title: M.getCurrentPage().title
|
||||
title: M.getCurrentPage().title,
|
||||
eventBus: eventBus
|
||||
} );
|
||||
} );
|
||||
} );
|
||||
|
@ -36,7 +38,8 @@
|
|||
return new CategoryAddOverlay( {
|
||||
api: new mw.Api(),
|
||||
isAnon: isAnon,
|
||||
title: M.getCurrentPage().title
|
||||
title: M.getCurrentPage().title,
|
||||
eventBus: eventBus
|
||||
} );
|
||||
} );
|
||||
} );
|
||||
|
|
|
@ -16,7 +16,8 @@
|
|||
overlayManager = OverlayManager.getSingleton(),
|
||||
page = M.getCurrentPage(),
|
||||
api = new mw.Api(),
|
||||
thumbs = page.getThumbnails();
|
||||
thumbs = page.getThumbnails(),
|
||||
eventBus = M.require( 'mobile.startup/eventBusSingleton' );
|
||||
|
||||
/**
|
||||
* Event handler for clicking on an image thumbnail
|
||||
|
@ -116,7 +117,8 @@
|
|||
imageOverlay = new ImageOverlay( {
|
||||
api: api,
|
||||
thumbnails: thumbs,
|
||||
title: decodeURIComponent( title )
|
||||
title: decodeURIComponent( title ),
|
||||
eventBus: eventBus
|
||||
} );
|
||||
imageOverlay.on( ImageOverlay.EVENT_EXIT, function () {
|
||||
// Actually dismiss the overlay whenever the cross is closed.
|
||||
|
@ -361,7 +363,7 @@
|
|||
initModifiedInfo();
|
||||
initRegistrationInfo();
|
||||
initHistoryLink( $( '.last-modifier-tagline a' ) );
|
||||
M.on( 'resize', loadTabletModules );
|
||||
eventBus.on( 'resize', loadTabletModules );
|
||||
loadTabletModules();
|
||||
appendDownloadButton();
|
||||
initRedlinksCta();
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
( function ( M ) {
|
||||
var TableOfContents = M.require( 'mobile.toc/TableOfContents' ),
|
||||
Toggler = M.require( 'mobile.toggle/Toggler' );
|
||||
Toggler = M.require( 'mobile.toggle/Toggler' ),
|
||||
eventBus = M.require( 'mobile.startup/eventBusSingleton' );
|
||||
|
||||
/**
|
||||
* Create TableOfContents if the given Page has sections and is not the main page
|
||||
|
@ -19,7 +20,13 @@
|
|||
} );
|
||||
|
||||
// eslint-disable-next-line no-new
|
||||
new Toggler( toc.$el, 'toc-', null, true );
|
||||
new Toggler( {
|
||||
$container: toc.$el,
|
||||
prefix: 'toc-',
|
||||
page: null,
|
||||
isClosed: true,
|
||||
eventBus: eventBus
|
||||
} );
|
||||
// if there is a toc already, replace it
|
||||
if ( $toc.length > 0 ) {
|
||||
// don't show toc at end of page, when no sections there
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
( function ( M ) {
|
||||
var page = M.getCurrentPage(),
|
||||
$contentContainer = $( '#mw-content-text > .mw-parser-output' ),
|
||||
Toggler = M.require( 'mobile.toggle/Toggler' );
|
||||
Toggler = M.require( 'mobile.toggle/Toggler' ),
|
||||
eventBus = M.require( 'mobile.startup/eventBusSingleton' );
|
||||
|
||||
if ( !page.getLeadSectionElement() ) {
|
||||
// Operating in desktop Minerva mode. Stop execution. (T172948)
|
||||
|
@ -31,7 +32,12 @@
|
|||
delete window.mfTempOpenSection;
|
||||
}
|
||||
// eslint-disable-next-line no-new
|
||||
new Toggler( $container, prefix, page );
|
||||
new Toggler( {
|
||||
$container: $container,
|
||||
prefix: prefix,
|
||||
page: page,
|
||||
eventBus: eventBus
|
||||
} );
|
||||
}
|
||||
|
||||
// avoid this running on Watchlist
|
||||
|
|
|
@ -11,7 +11,12 @@
|
|||
|
||||
QUnit.module( 'Minerva DownloadIcon', {
|
||||
beforeEach: function () {
|
||||
this.skin = new Skin( {} );
|
||||
this.skin = new Skin( {
|
||||
eventBus: {
|
||||
on: function () {},
|
||||
off: function () {}
|
||||
}
|
||||
} );
|
||||
}
|
||||
} );
|
||||
|
||||
|
@ -74,6 +79,10 @@
|
|||
QUnit.module( 'Minerva DownloadIcon.isAvailable()', {
|
||||
beforeEach: function () {
|
||||
this.skin = new Skin( {
|
||||
eventBus: {
|
||||
on: function () {},
|
||||
off: function () {}
|
||||
},
|
||||
page: new Page( {
|
||||
id: 0,
|
||||
title: 'Test',
|
||||
|
|
Loading…
Reference in a new issue