From 7e1fe88494d105d38c9fcce2a2e3a0bd523eff54 Mon Sep 17 00:00:00 2001 From: Moriel Schottlender Date: Mon, 26 Jun 2017 17:17:19 -0700 Subject: [PATCH] RCFilters: Make extra filters footer non-sticky Bug: T168851 Change-Id: I504847e4b07d473786a4026b053a55ae460897e8 --- ...rcfilters.ui.FilterTagMultiselectWidget.js | 1 + .../ui/mw.rcfilters.ui.MenuSelectWidget.js | 24 ++++++++++++------- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterTagMultiselectWidget.js b/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterTagMultiselectWidget.js index 70381f22eb..0ab459e73d 100644 --- a/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterTagMultiselectWidget.js +++ b/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterTagMultiselectWidget.js @@ -47,6 +47,7 @@ footers: [ { name: 'viewSelect', + sticky: false, // View select menu, appears on default view only $element: $( '
' ) .append( new mw.rcfilters.ui.ViewSwitchWidget( this.controller, this.model ).$element ), diff --git a/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.MenuSelectWidget.js b/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.MenuSelectWidget.js index c70e00b471..cc63fb6751 100644 --- a/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.MenuSelectWidget.js +++ b/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.MenuSelectWidget.js @@ -82,17 +82,23 @@ // based on view config.footers = config.footers || []; config.footers.forEach( function ( footerData ) { - var adjustedData = { - // Wrap the element with our own footer wrapper - $element: $( '
' ) - .addClass( 'mw-rcfilters-ui-menuSelectWidget-footer' ) - .addClass( 'mw-rcfilters-ui-menuSelectWidget-footer-' + footerData.name ) - .append( footerData.$element ), - views: footerData.views - }; + var isSticky = footerData.sticky === undefined ? true : !!footerData.sticky, + adjustedData = { + // Wrap the element with our own footer wrapper + $element: $( '
' ) + .addClass( 'mw-rcfilters-ui-menuSelectWidget-footer' ) + .addClass( 'mw-rcfilters-ui-menuSelectWidget-footer-' + footerData.name ) + .append( footerData.$element ), + views: footerData.views + }; this.footers.push( adjustedData ); - this.$element.append( adjustedData.$element ); + + if ( isSticky ) { + this.$element.append( adjustedData.$element ); + } else { + this.$body.append( adjustedData.$element ); + } }.bind( this ) ); // Switch to the correct view -- 2.20.1