Removes the highlighting feature from rcfilters (e.g. Special:RecentChanges)
when OO.ui.isMobile() is true (isMobile is true when MobileFrontend
is enabled).
Also prevents the "enhanced" list view module from being loaded in mobile mode,
as the option to do so is disabled for mobile.
Bug: T231054
Change-Id: I1d4e1fdef6469f461ff4dad168ce01c856531d1c
* @return {boolean}
*/
ItemModel.prototype.isHighlightSupported = function () {
* @return {boolean}
*/
ItemModel.prototype.isHighlightSupported = function () {
- return !!this.getCssClass();
+ return !!this.getCssClass() && !OO.ui.isMobile();
isEmpty = $changesListContent === 'NO_RESULTS',
// For enhanced mode, we have to load these modules, which are
// not loaded for the 'regular' mode in the backend
isEmpty = $changesListContent === 'NO_RESULTS',
// For enhanced mode, we have to load these modules, which are
// not loaded for the 'regular' mode in the backend
- loaderPromise = mw.user.options.get( 'usenewrc' ) ?
+ loaderPromise = mw.user.options.get( 'usenewrc' ) && !OO.ui.isMobile() ?
mw.loader.using( [ 'mediawiki.special.changeslist.enhanced', 'mediawiki.icon' ] ) :
$.Deferred().resolve(),
widget = this;
mw.loader.using( [ 'mediawiki.special.changeslist.enhanced', 'mediawiki.icon' ] ) :
$.Deferred().resolve(),
widget = this;
controller, filtersViewModel, invertModel, itemModel, highlightPopup, config
) {
var layout,
controller, filtersViewModel, invertModel, itemModel, highlightPopup, config
) {
var layout,
classes = [],
$label = $( '<div>' )
.addClass( 'mw-rcfilters-ui-itemMenuOptionWidget-label' );
classes = [],
$label = $( '<div>' )
.addClass( 'mw-rcfilters-ui-itemMenuOptionWidget-label' );
// defaults on 'click' as well.
layout.$label.on( 'click', false );
// defaults on 'click' as well.
layout.$label.on( 'click', false );
- this.$element
- .addClass( 'mw-rcfilters-ui-itemMenuOptionWidget' )
- .addClass( 'mw-rcfilters-ui-itemMenuOptionWidget-view-' + this.itemModel.getGroupModel().getView() )
+ $widgetRow = $( '<div>' )
+ .addClass( 'mw-rcfilters-ui-table' )
- .addClass( 'mw-rcfilters-ui-table' )
+ .addClass( 'mw-rcfilters-ui-row' )
- .addClass( 'mw-rcfilters-ui-row' )
- .append(
- $( '<div>' )
- .addClass( 'mw-rcfilters-ui-cell mw-rcfilters-ui-itemMenuOptionWidget-itemCheckbox' )
- .append( layout.$element ),
- $( '<div>' )
- .addClass( 'mw-rcfilters-ui-cell mw-rcfilters-ui-itemMenuOptionWidget-excludeLabel' )
- .append( this.excludeLabel.$element ),
- $( '<div>' )
- .addClass( 'mw-rcfilters-ui-cell mw-rcfilters-ui-itemMenuOptionWidget-highlightButton' )
- .append( this.highlightButton.$element )
- )
+ .addClass( 'mw-rcfilters-ui-cell mw-rcfilters-ui-itemMenuOptionWidget-itemCheckbox' )
+ .append( layout.$element )
+ if ( !OO.ui.isMobile() ) {
+ $widgetRow.find( '.mw-rcfilters-ui-row' ).append(
+ $( '<div>' )
+ .addClass( 'mw-rcfilters-ui-cell mw-rcfilters-ui-itemMenuOptionWidget-excludeLabel' )
+ .append( this.excludeLabel.$element ),
+ $( '<div>' )
+ .addClass( 'mw-rcfilters-ui-cell mw-rcfilters-ui-itemMenuOptionWidget-highlightButton' )
+ .append( this.highlightButton.$element )
+ );
+ }
+
+ this.$element
+ .addClass( 'mw-rcfilters-ui-itemMenuOptionWidget' )
+ .addClass( 'mw-rcfilters-ui-itemMenuOptionWidget-view-' + this.itemModel.getGroupModel().getView() )
+ .append( $widgetRow );
+
if ( this.itemModel.getIdentifiers() ) {
this.itemModel.getIdentifiers().forEach( function ( ident ) {
classes.push( 'mw-rcfilters-ui-itemMenuOptionWidget-identifier-' + ident );
if ( this.itemModel.getIdentifiers() ) {
this.itemModel.getIdentifiers().forEach( function ( ident ) {
classes.push( 'mw-rcfilters-ui-itemMenuOptionWidget-identifier-' + ident );