Ticket #5345: 5345_2.patch

File 5345_2.patch, 2.6 KB (added by Garry Yao, 13 years ago)
  • _source/plugins/elementspath/plugin.js

     
    3333
    3434                init : function( editor )
    3535                {
     36                        var config = editor.config,
     37                                        pathFilters = config.elementsPath_filters;
     38
     39                        config.elementsPath_filters = pathFilters instanceof Array ? pathFilters :
     40                                typeof pathFilters == 'function' ? [ pathFilters ] : [];
     41
    3642                        var spaceId = 'cke_path_' + editor.name;
    3743                        var spaceElement;
    3844                        var getSpaceElement = function()
     
    206212
    207213/**
    208214 * A list of filter functions to determinate whether an element should display in elements path bar.
     215 * @name CKEDITOR.config.elementsPath_filters
    209216 * @type Array Array of functions that optionaly return 'false' to prevent the element from displaying.
    210217 * @default  []
    211218 * @example
     
    216223 *                      return false;
    217224 *      });
    218225 */
    219 CKEDITOR.config.elementsPath_filters = [];
  • _source/core/editor.js

     
    230230                                // Load all plugin specific language files in a row.
    231231                                CKEDITOR.scriptLoader.load( languageFiles, function()
    232232                                        {
     233                                                // Add-in all other config options that been defined on CKEDITOR in plugin files.
     234                                                // TODO: Remove this line when we're free of global config definition in all plugins.
     235                                                 CKEDITOR.tools.extend( editor.config, CKEDITOR.tools.clone( CKEDITOR.config ) );
     236
    233237                                                // Initialize all plugins that have the "beforeInit" and "init" methods defined.
    234238                                                var methods = [ 'beforeInit', 'init', 'afterInit' ];
    235239                                                for ( var m = 0 ; m < methods.length ; m++ )
     
    390394                         * var editor = CKEDITOR.instances.editor1;
    391395                         * alert( <b>editor.config.theme</b> );  "default" e.g.
    392396                         */
    393                         this.config = CKEDITOR.tools.prototypedCopy( CKEDITOR.config );
     397                        this.config = CKEDITOR.tools.clone( CKEDITOR.config );
    394398
    395399                        /**
    396400                         * Namespace containing UI features related to this editor instance.
     
    505509                        if ( this._.filebrowserFn )
    506510                                CKEDITOR.tools.removeFunction( this._.filebrowserFn );
    507511
    508                         items = editor.config.elementsPath_filters;
    509                         if ( items )
    510                         {
    511                                 for ( index= 0 ; index < items.length ; index++ )
    512                                         items[ index ] = null;
    513                         }
    514 
    515512                        this.fire( 'destroy' );
    516513                        CKEDITOR.remove( this );
    517514                        CKEDITOR.fire( 'instanceDestroyed', null, this );
© 2003 – 2022, CKSource sp. z o.o. sp.k. All rights reserved. | Terms of use | Privacy policy