$( '.rcfilters-container' ).append( filtersWidget.$element );
$( 'body' ).append( $overlay );
- // Set as ready
- $( '.rcfilters-head' ).addClass( 'mw-rcfilters-ui-ready' );
- $( '.rcfilters-spinner' ).detach();
-
$( 'a.mw-helplink' ).attr(
'href',
'https://www.mediawiki.org/wiki/Special:MyLanguage/Help:New_filters_for_edit_review'
&:not( .mw-rcfilters-ui-ready ) {
opacity: 0.5;
pointer-events: none;
+
+ .rcoptions {
+ display: none;
+ }
}
}
margin: 0;
}
- .mw-changeslist-empty {
- // Hide the 'empty' message when we load rcfilters
- // since we replace it anyways with a specific
- // message of our own
- display: none;
+ .mw-changeslist {
+ &-empty {
+ // Hide the 'empty' message when we load rcfilters
+ // since we replace it anyways with a specific
+ // message of our own
+ display: none;
+ }
+
+ &:not( .mw-rcfilters-ui-ready ) {
+ opacity: 0.5;
+ }
}
.rcfilters-spinner {
margin: -2em auto 0;
width: 70px;
opacity: 0.8;
- display: block;
+ display: none;
white-space: nowrap;
+ &:not( .mw-rcfilters-ui-ready ) {
+ display: block;
+ }
+
& .rcfilters-spinner-bounce,
&:before,
&:after {
* List of changes
*
* @extends OO.ui.Widget
- * @mixins OO.ui.mixin.PendingElement
*
* @constructor
* @param {mw.rcfilters.dm.FiltersViewModel} filtersViewModel View model
// Parent
mw.rcfilters.ui.ChangesListWrapperWidget.parent.call( this, config );
- // Mixin constructors
- OO.ui.mixin.PendingElement.call( this, config );
this.filtersViewModel = filtersViewModel;
this.changesListViewModel = changesListViewModel;
/* Initialization */
OO.inheritClass( mw.rcfilters.ui.ChangesListWrapperWidget, OO.ui.Widget );
- OO.mixinClass( mw.rcfilters.ui.ChangesListWrapperWidget, OO.ui.mixin.PendingElement );
/**
* Respond to the highlight feature being toggled on and off
* Respond to changes list model invalidate
*/
mw.rcfilters.ui.ChangesListWrapperWidget.prototype.onModelInvalidate = function () {
- this.pushPending();
+ $( '.rcfilters-head' ).removeClass( 'mw-rcfilters-ui-ready' );
+ $( '.rcfilters-spinner' ).removeClass( 'mw-rcfilters-ui-ready' );
+ this.$element.removeClass( 'mw-rcfilters-ui-ready' );
};
/**
mw.hook( 'wikipage.content' ).fire( this.$element );
}
}
- this.popPending();
+
+ $( '.rcfilters-head' ).addClass( 'mw-rcfilters-ui-ready' );
+ $( '.rcfilters-spinner' ).addClass( 'mw-rcfilters-ui-ready' );
+ this.$element.addClass( 'mw-rcfilters-ui-ready' );
};
/**
mw.rcfilters.ui.FormWrapperWidget.parent.call( this, $.extend( {}, config, {
$element: $formRoot
} ) );
- // Mixin constructors
- OO.ui.mixin.PendingElement.call( this, config );
this.changeListModel = changeListModel;
this.filtersModel = filtersModel;
/* Initialization */
OO.inheritClass( mw.rcfilters.ui.FormWrapperWidget, OO.ui.Widget );
- OO.mixinClass( mw.rcfilters.ui.FormWrapperWidget, OO.ui.mixin.PendingElement );
/**
* Respond to link click
* Respond to model invalidate
*/
mw.rcfilters.ui.FormWrapperWidget.prototype.onChangesModelInvalidate = function () {
- this.pushPending();
this.$submitButton.prop( 'disabled', true );
};
}
this.cleanUpFieldset();
-
- this.popPending();
};
/**