mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/VisualEditor
synced 2024-11-24 14:33:59 +00:00
dbc696124f
Temporarily disable prefer-const as this requires manual fixing. Change-Id: I477b69a57e8d33535c6fc71dba196a8605780725
47 lines
1.3 KiB
JavaScript
47 lines
1.3 KiB
JavaScript
/*!
|
|
* VisualEditor ContentEditable MWResizableNode class.
|
|
*
|
|
* @copyright See AUTHORS.txt
|
|
* @license The MIT License (MIT); see LICENSE.txt
|
|
*/
|
|
|
|
/**
|
|
* ContentEditable MediaWiki resizable node.
|
|
*
|
|
* @class
|
|
* @abstract
|
|
* @extends ve.ce.ResizableNode
|
|
*
|
|
* @constructor
|
|
* @param {jQuery} [$resizable=this.$element] Resizable DOM element
|
|
* @param {Object} [config] Configuration options
|
|
*/
|
|
ve.ce.MWResizableNode = function VeCeMWResizableNode( $resizable, config ) {
|
|
ve.ce.ResizableNode.call( this, $resizable, config );
|
|
};
|
|
|
|
/* Inheritance */
|
|
|
|
OO.inheritClass( ve.ce.MWResizableNode, ve.ce.ResizableNode );
|
|
|
|
/**
|
|
* Generate an object of attributes changes from the new width and height.
|
|
*
|
|
* If either property changes, clear the defaultSize flag.
|
|
*
|
|
* @param {number} width New image width
|
|
* @param {number} height New image height
|
|
* @return {Object} Attribute changes
|
|
*/
|
|
ve.ce.MWResizableNode.prototype.getAttributeChanges = function ( width, height ) {
|
|
const attrChanges = ve.ce.ResizableNode.prototype.getAttributeChanges.call( this, width, height );
|
|
if ( !ve.isEmptyObject( attrChanges ) ) {
|
|
attrChanges.defaultSize = false;
|
|
}
|
|
// type=frame is not resizeable, so change it to type=thumb
|
|
if ( this.getModel().getAttribute( 'type' ) === 'frame' ) {
|
|
attrChanges.type = 'thumb';
|
|
}
|
|
return attrChanges;
|
|
};
|