Merge "Support custom offsets from SearchResultSet"
[lhc/web/wiklou.git] / resources / src / mediawiki.rcfilters / ui / mw.rcfilters.ui.FilterTagMultiselectWidget.js
index 9671f5e..6a6790f 100644 (file)
                                classes: [ 'mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget' ],
                                items: [
                                        new OO.ui.ButtonOptionWidget( {
+                                               framed: false,
                                                data: 'namespaces',
                                                icon: 'article',
-                                               title: mw.msg( 'namespaces' )
+                                               title: mw.msg( 'rcfilters-view-namespaces-tooltip' )
                                        } ),
                                        new OO.ui.ButtonOptionWidget( {
+                                               framed: false,
                                                data: 'tags',
                                                icon: 'tag',
-                                               title: mw.msg( 'rcfilters-view-tags' )
+                                               title: mw.msg( 'rcfilters-view-tags-tooltip' )
                                        } )
                                ]
                        } );
                                // Clear the input
                                this.input.setValue( '' );
                        }
+
+                       // Log filter grouping
+                       this.controller.trackFilterGroupings( 'filtermenu' );
                }
 
                this.input.setIcon( isVisible ? 'search' : 'menu' );
                                !this.isEmpty() &&
                                !this.matchingQuery
                        );
+
+                       if ( this.matchingQuery ) {
+                               this.emphasize();
+                       }
                }
        };
 
         * @param {mw.rcfilters.dm.FilterItem} item Filter item model
         */
        mw.rcfilters.ui.FilterTagMultiselectWidget.prototype.onModelItemUpdate = function ( item ) {
+               if ( item.getGroupModel().isHidden() ) {
+                       return;
+               }
+
                if (
                        item.isSelected() ||
                        (
                }
        };
 
+       mw.rcfilters.ui.FilterTagMultiselectWidget.prototype.emphasize = function () {
+               if (
+                       !this.$handle.hasClass( 'mw-rcfilters-ui-filterTagMultiselectWidget-animate' )
+               ) {
+                       this.$handle
+                               .addClass( 'mw-rcfilters-ui-filterTagMultiselectWidget-emphasize' )
+                               .addClass( 'mw-rcfilters-ui-filterTagMultiselectWidget-animate' );
+
+                       setTimeout( function () {
+                               this.$handle
+                                       .removeClass( 'mw-rcfilters-ui-filterTagMultiselectWidget-emphasize' );
+
+                               setTimeout( function () {
+                                       this.$handle
+                                               .removeClass( 'mw-rcfilters-ui-filterTagMultiselectWidget-animate' );
+                               }.bind( this ), 1000 );
+                       }.bind( this ), 500 );
+
+               }
+       };
        /**
         * Scroll the element to top within its container
         *