Ticket #6170: 6170_3.patch

File 6170_3.patch, 1.4 KB (added by Sa'ar Zac Elias, 9 years ago)
  • _source/plugins/richcombo/plugin.js

     
    226226
    227227                        panel.onShow = function()
    228228                                {
     229                                        // Trigger the onHide event of the previously active panel to prevent incorrect styles from being applied (#6170)
     230                                        var element = this.element.getFirst(),
     231                                                activePanel;
     232                                        if ( ( activePanel = element.getCustomData( 'activePanel' ) ) )
     233                                                activePanel.onHide.call( this, 1 );
     234                                        element.setCustomData( 'activePanel', panel );
     235
    229236                                        if ( me.className )
    230                                                 this.element.getFirst().addClass( me.className + '_panel' );
     237                                                element.addClass( me.className + '_panel' );
    231238
    232239                                        me.setState( CKEDITOR.TRISTATE_ON );
    233240
     
    239246                                                me.onOpen();
    240247                                };
    241248
    242                         panel.onHide = function()
     249                        panel.onHide = function( preventOnClose )
    243250                                {
     251                                        var element = this.element.getFirst();
    244252                                        if ( me.className )
    245                                                 this.element.getFirst().removeClass( me.className + '_panel' );
     253                                                element.removeClass( me.className + '_panel' );
     254                                        element.removeCustomData( 'activePanel' );
    246255
    247256                                        me.setState( CKEDITOR.TRISTATE_OFF );
    248257
    249258                                        me._.on = 0;
    250259
    251                                         if ( me.onClose )
     260                                        if ( !preventOnClose && me.onClose )
    252261                                                me.onClose();
    253262                                };
    254263
© 2003 – 2019 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy