diff --git a/src/imagetextalternative/ui/textalternativeformview.js b/src/imagetextalternative/ui/textalternativeformview.js index ba46d200..452b90bf 100644 --- a/src/imagetextalternative/ui/textalternativeformview.js +++ b/src/imagetextalternative/ui/textalternativeformview.js @@ -65,7 +65,7 @@ export default class TextAlternativeFormView extends View { * * @member {module:ui/button/buttonview~ButtonView} #saveButtonView */ - this.saveButtonView = this._createButton( t( 'Save' ), checkIcon ); + this.saveButtonView = this._createButton( t( 'Save' ), checkIcon, 'ck-button-save' ); this.saveButtonView.type = 'submit'; /** @@ -73,7 +73,7 @@ export default class TextAlternativeFormView extends View { * * @member {module:ui/button/buttonview~ButtonView} #cancelButtonView */ - this.cancelButtonView = this._createButton( t( 'Cancel' ), cancelIcon, 'cancel' ); + this.cancelButtonView = this._createButton( t( 'Cancel' ), cancelIcon, 'ck-button-cancel', 'cancel' ); /** * A collection of views which can be focused in the form. @@ -104,14 +104,6 @@ export default class TextAlternativeFormView extends View { } } ); - this.saveButtonView.extendTemplate( { - attributes: { - class: [ - 'ck-button-action' - ] - } - } ); - this.setTemplate( { tag: 'form', @@ -158,10 +150,11 @@ export default class TextAlternativeFormView extends View { * @private * @param {String} label The button label * @param {String} icon The button's icon. + * @param {String} className The additional button CSS class name. * @param {String} [eventName] The event name that the ButtonView#execute event will be delegated to. * @returns {module:ui/button/buttonview~ButtonView} The button view instance. */ - _createButton( label, icon, eventName ) { + _createButton( label, icon, className, eventName ) { const button = new ButtonView( this.locale ); button.set( { @@ -170,6 +163,12 @@ export default class TextAlternativeFormView extends View { tooltip: true } ); + button.extendTemplate( { + attributes: { + class: className + } + } ); + if ( eventName ) { button.delegate( 'execute' ).to( this, eventName ); } diff --git a/tests/imagetextalternative/ui/textalternativeformview.js b/tests/imagetextalternative/ui/textalternativeformview.js index 38d90930..d9bbdcd2 100644 --- a/tests/imagetextalternative/ui/textalternativeformview.js +++ b/tests/imagetextalternative/ui/textalternativeformview.js @@ -43,6 +43,11 @@ describe( 'TextAlternativeFormView', () => { expect( view.labeledInput ).to.be.instanceOf( View ); expect( view.saveButtonView ).to.be.instanceOf( View ); expect( view.cancelButtonView ).to.be.instanceOf( View ); + + view.render(); + + expect( view.saveButtonView.element.classList.contains( 'ck-button-save' ) ).to.be.true; + expect( view.cancelButtonView.element.classList.contains( 'ck-button-cancel' ) ).to.be.true; } ); it( 'should create #_focusCycler instance', () => {