From 03f33cea41b566cbb4b2b98c4e4e240d24bbd1ad Mon Sep 17 00:00:00 2001 From: Moriel Schottlender Date: Mon, 17 Apr 2017 17:06:47 -0700 Subject: [PATCH] RCFilters UI: Display 'no results found' if... no results were found! The "normal" operation of an OO.ui.MenuSelectWidget is to hide itself if no results are found in the filtering process. However, we want the menu to remain visible but display a 'no filters found' message like it did before the migration to a MenuTagMultiselectWidget. Bug: T163170 Change-Id: Iee7b07961b90ac514a4aa1f7c56019ecd7b4c3cc --- ...cfilters.ui.FilterFloatingMenuSelectWidget.less | 14 ++++++++++++++ ....rcfilters.ui.FilterFloatingMenuSelectWidget.js | 7 ++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/resources/src/mediawiki.rcfilters/styles/mw.rcfilters.ui.FilterFloatingMenuSelectWidget.less b/resources/src/mediawiki.rcfilters/styles/mw.rcfilters.ui.FilterFloatingMenuSelectWidget.less index 194b1b21d0..7602465e31 100644 --- a/resources/src/mediawiki.rcfilters/styles/mw.rcfilters.ui.FilterFloatingMenuSelectWidget.less +++ b/resources/src/mediawiki.rcfilters/styles/mw.rcfilters.ui.FilterFloatingMenuSelectWidget.less @@ -4,6 +4,20 @@ z-index: auto; max-width: 650px; + &.oo-ui-menuSelectWidget-invisible { + display: block; + } + + &-noresults { + display: none; + padding: 0.5em; + color: #666; + + .oo-ui-menuSelectWidget-invisible & { + display: inline-block; + } + } + &-body { max-height: 70vh; } diff --git a/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterFloatingMenuSelectWidget.js b/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterFloatingMenuSelectWidget.js index ec85df98da..748eea8a8e 100644 --- a/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterFloatingMenuSelectWidget.js +++ b/resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterFloatingMenuSelectWidget.js @@ -45,11 +45,16 @@ } ); + this.noResults = new OO.ui.LabelWidget( { + label: mw.msg( 'rcfilters-filterlist-noresults' ), + classes: [ 'mw-rcfilters-ui-filterFloatingMenuSelectWidget-noresults' ] + } ); + this.$element .addClass( 'mw-rcfilters-ui-filterFloatingMenuSelectWidget' ) .append( this.$body - .append( header.$element, this.$group ) + .append( header.$element, this.$group, this.noResults.$element ) ); if ( this.$footer ) { -- 2.20.1