Merge "RCFilters: Make namespace and tag features no longer experimental"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Fri, 28 Jul 2017 08:18:01 +0000 (08:18 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Fri, 28 Jul 2017 08:18:01 +0000 (08:18 +0000)
1  2 
resources/src/mediawiki.rcfilters/mw.rcfilters.Controller.js
resources/src/mediawiki.rcfilters/ui/mw.rcfilters.ui.FilterTagMultiselectWidget.js

@@@ -2,9 -2,7 +2,9 @@@
        /* eslint no-underscore-dangle: "off" */
        /**
         * Controller for the filters in Recent Changes
 +       * @class
         *
 +       * @constructor
         * @param {mw.rcfilters.dm.FiltersViewModel} filtersModel Filters view model
         * @param {mw.rcfilters.dm.ChangesListViewModel} changesListModel Changes list view model
         * @param {mw.rcfilters.dm.SavedQueriesModel} savedQueriesModel Saved queries model
                        views = {},
                        items = [],
                        uri = new mw.Uri(),
-                       $changesList = $( '.mw-changeslist' ).first().contents(),
-                       experimentalViews = mw.config.get( 'wgStructuredChangeFiltersEnableExperimentalViews' );
+                       $changesList = $( '.mw-changeslist' ).first().contents();
  
                // Prepare views
-               if ( namespaceStructure && experimentalViews ) {
+               if ( namespaceStructure ) {
                        items = [];
                        $.each( namespaceStructure, function ( namespaceID, label ) {
                                // Build and clean up the individual namespace items definition
@@@ -72,7 -69,7 +71,7 @@@
                                } ]
                        };
                }
-               if ( tagList && experimentalViews ) {
+               if ( tagList ) {
                        views.tags = {
                                title: mw.msg( 'rcfilters-view-tags' ),
                                trigger: '#',
                        );
        };
  
 -      /**
 -       * Get an object representing the default parameter state, whether
 -       * it is from the model defaults or from the saved queries.
 -       *
 -       * @return {Object} Default parameters
 -       */
 -      mw.rcfilters.Controller.prototype._getDefaultParams = function () {
 -              var data, queryHighlights,
 -                      savedParams = {},
 -                      savedHighlights = {},
 -                      defaultSavedQueryItem = this.savedQueriesModel.getItemByID( this.savedQueriesModel.getDefault() );
 -
 -              if ( mw.config.get( 'wgStructuredChangeFiltersEnableSaving' ) &&
 -                      defaultSavedQueryItem ) {
 -
 -                      data = defaultSavedQueryItem.getData();
 -
 -                      queryHighlights = data.highlights || {};
 -                      savedParams = this.filtersModel.getParametersFromFilters( data.filters || {} );
 -
 -                      // Translate highlights to parameters
 -                      savedHighlights.highlight = String( Number( queryHighlights.highlight ) );
 -                      $.each( queryHighlights, function ( filterName, color ) {
 -                              if ( filterName !== 'highlights' ) {
 -                                      savedHighlights[ filterName + '_color' ] = color;
 -                              }
 -                      } );
 -
 -                      return $.extend( true, {}, savedParams, savedHighlights, { invert: data.invert } );
 -              }
 -
 -              return $.extend(
 -                      { highlight: '0' },
 -                      this.filtersModel.getDefaultParams()
 -              );
 -      };
 -
        /**
         * Get an object representing the default parameter state, whether
         * it is from the model defaults or from the saved queries.
         * Track usage of highlight feature
         *
         * @param {string} action
 -       * @param {array|object|string} filters
 +       * @param {Array|Object|string} filters
         */
        mw.rcfilters.Controller.prototype._trackHighlight = function ( action, filters ) {
                filters = typeof filters === 'string' ? { name: filters } : filters;
@@@ -2,7 -2,6 +2,7 @@@
        /**
         * List displaying all filter groups
         *
 +       * @class
         * @extends OO.ui.MenuTagMultiselectWidget
         * @mixins OO.ui.mixin.PendingElement
         *
@@@ -48,7 -47,6 +48,6 @@@
                                footers: [
                                        {
                                                name: 'viewSelect',
-                                               disabled: !mw.config.get( 'wgStructuredChangeFiltersEnableExperimentalViews' ),
                                                sticky: false,
                                                // View select menu, appears on default view only
                                                $element: $( '<div>' )
                        );
                }
  
-               if ( mw.config.get( 'wgStructuredChangeFiltersEnableExperimentalViews' ) ) {
-                       // Add a selector at the right of the input
-                       this.viewsSelectWidget = new OO.ui.ButtonSelectWidget( {
-                               classes: [ 'mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget' ],
-                               items: [
-                                       new OO.ui.ButtonOptionWidget( {
-                                               framed: false,
-                                               data: 'namespaces',
-                                               icon: 'article',
-                                               title: mw.msg( 'rcfilters-view-namespaces-tooltip' )
-                                       } ),
-                                       new OO.ui.ButtonOptionWidget( {
-                                               framed: false,
-                                               data: 'tags',
-                                               icon: 'tag',
-                                               title: mw.msg( 'rcfilters-view-tags-tooltip' )
-                                       } )
-                               ]
-                       } );
+               // Add a selector at the right of the input
+               this.viewsSelectWidget = new OO.ui.ButtonSelectWidget( {
+                       classes: [ 'mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget' ],
+                       items: [
+                               new OO.ui.ButtonOptionWidget( {
+                                       framed: false,
+                                       data: 'namespaces',
+                                       icon: 'article',
+                                       title: mw.msg( 'rcfilters-view-namespaces-tooltip' )
+                               } ),
+                               new OO.ui.ButtonOptionWidget( {
+                                       framed: false,
+                                       data: 'tags',
+                                       icon: 'tag',
+                                       title: mw.msg( 'rcfilters-view-tags-tooltip' )
+                               } )
+                       ]
+               } );
  
-                       // Rearrange the UI so the select widget is at the right of the input
-                       this.$element.append(
-                               $( '<div>' )
-                                       .addClass( 'mw-rcfilters-ui-table' )
-                                       .append(
-                                               $( '<div>' )
-                                                       .addClass( 'mw-rcfilters-ui-row' )
-                                                       .append(
-                                                               $( '<div>' )
-                                                                       .addClass( 'mw-rcfilters-ui-cell' )
-                                                                       .addClass( 'mw-rcfilters-ui-filterTagMultiselectWidget-views-input' )
-                                                                       .append( this.input.$element ),
-                                                               $( '<div>' )
-                                                                       .addClass( 'mw-rcfilters-ui-cell' )
-                                                                       .addClass( 'mw-rcfilters-ui-filterTagMultiselectWidget-views-select' )
-                                                                       .append( this.viewsSelectWidget.$element )
-                                                       )
-                                       )
-                       );
+               // Rearrange the UI so the select widget is at the right of the input
+               this.$element.append(
+                       $( '<div>' )
+                               .addClass( 'mw-rcfilters-ui-table' )
+                               .append(
+                                       $( '<div>' )
+                                               .addClass( 'mw-rcfilters-ui-row' )
+                                               .append(
+                                                       $( '<div>' )
+                                                               .addClass( 'mw-rcfilters-ui-cell' )
+                                                               .addClass( 'mw-rcfilters-ui-filterTagMultiselectWidget-views-input' )
+                                                               .append( this.input.$element ),
+                                                       $( '<div>' )
+                                                               .addClass( 'mw-rcfilters-ui-cell' )
+                                                               .addClass( 'mw-rcfilters-ui-filterTagMultiselectWidget-views-select' )
+                                                               .append( this.viewsSelectWidget.$element )
+                                               )
+                               )
+               );
  
-                       // Event
-                       this.viewsSelectWidget.connect( this, { choose: 'onViewsSelectWidgetChoose' } );
-               }
+               // Event
+               this.viewsSelectWidget.connect( this, { choose: 'onViewsSelectWidgetChoose' } );
  
                rcFiltersRow.append(
                        $( '<div>' )
        };
  
        /**
 -       * @inheridoc
 +       * @inheritdoc
         */
        mw.rcfilters.ui.FilterTagMultiselectWidget.prototype.onChangeTags = function () {
                // Parent method