/**
* FixedEditCheckDialog constructor.
*
* This dialog displays edit checks in the pre-save moment, and shows single edit checks at the bottom of the display
* while on mobile.
*
* @class
* @extends ve.ui.ToolbarDialog
* @mixes ve.ui.EditCheckDialog
* @param {Object} config
*/
ve.ui.FixedEditCheckDialog = function VeUiFixedEditCheckDialog( config ) {
// Parent constructor
ve.ui.FixedEditCheckDialog.super.call( this, config );
// Mixin constructor
ve.ui.EditCheckDialog.call( this, config );
};
/* Inheritance */
OO.inheritClass( ve.ui.FixedEditCheckDialog, ve.ui.ToolbarDialog );
OO.mixinClass( ve.ui.FixedEditCheckDialog, ve.ui.EditCheckDialog );
/* Static properties */
ve.ui.FixedEditCheckDialog.static.name = 'fixedEditCheckDialog';
ve.ui.FixedEditCheckDialog.static.position = OO.ui.isMobile() ? 'below' : 'side';
ve.ui.FixedEditCheckDialog.static.size = OO.ui.isMobile() ? 'full' : 'medium';
ve.ui.FixedEditCheckDialog.static.alwaysFocusAction = true;
/* Methods */
/**
* @inheritdoc
*/
ve.ui.FixedEditCheckDialog.prototype.initialize = function () {
// Parent method
ve.ui.FixedEditCheckDialog.super.prototype.initialize.call( this );
// Mixin method
return ve.ui.EditCheckDialog.prototype.initialize.call( this );
};
/**
* @inheritdoc
*/
ve.ui.FixedEditCheckDialog.prototype.getSetupProcess = function ( data ) {
// Parent method
const process = ve.ui.FixedEditCheckDialog.super.prototype.getSetupProcess.call( this, data );
// Mixin method
return ve.ui.EditCheckDialog.prototype.getSetupProcess.call( this, data, process );
};
/**
* @inheritdoc
*/
ve.ui.FixedEditCheckDialog.prototype.getTeardownProcess = function ( data ) {
// Parent method
const process = ve.ui.FixedEditCheckDialog.super.prototype.getTeardownProcess.call( this, data );
// Mixin method
return ve.ui.EditCheckDialog.prototype.getTeardownProcess.call( this, data, process );
};
/**
* @inheritdoc ve.ui.EditCheckDialog
*/
ve.ui.FixedEditCheckDialog.prototype.onFocusAction = function ( action, index, scrollTo ) {
if ( this.singleAction && action === null ) {
// Can't unset the offset in single-action mode, because it hides the sidebar contents
return;
}
// Mixin method
return ve.ui.EditCheckDialog.prototype.onFocusAction.call( this, action, index, scrollTo );
};
/* Registration */
ve.ui.windowFactory.register( ve.ui.FixedEditCheckDialog );