Ticket #3207: 3207.patch

File 3207.patch, 6.5 KB (added by Frederico Caldeira Knabben, 16 years ago)
  • _source/core/config.js

     
    173173        theme : 'default',
    174174
    175175        /**
    176          * The skin to load.
     176         * The skin to load. It may be the name of the skin folder inside the
     177         * editor installation path, or the name and the path separated by a comma.
    177178         * @type String
    178179         * @default 'default'
    179180         * @example
    180181         * config.skin = 'v2';
     182         * @example
     183         * config.skin = 'myskin,/customstuff/myskin/';
    181184         */
    182185        skin : 'default',
    183186
  • _source/core/editor.js

     
    111111        {
    112112                // Set config related properties.
    113113
    114                 var skin = editor.config.skin;
     114                var skin = editor.config.skin.split( ',' ),
     115                        skinName = skin[ 0 ],
     116                        skinPath = CKEDITOR.getUrl( skin[ 1 ] || (
     117                                '_source/' +    // %REMOVE_LINE%
     118                                'skins/' + skinName + '/' ) );
    115119
    116                 editor.skinPath = CKEDITOR.getUrl(
    117                         '_source/' +    // %REMOVE_LINE%
    118                         'skins/' + skin + '/' );
     120                editor.skinName = skinName;
     121                editor.skinPath = skinPath;
     122                editor.skinClass = 'cke_skin_' + skinName;
    119123
    120                 editor.skinClass = 'cke_skin_' + skin;
    121 
    122124                // Fire the "configLoaded" event.
    123125                editor.fireOnce( 'configLoaded' );
    124126
     
    228230
    229231        var loadSkin = function( editor )
    230232        {
    231                 CKEDITOR.skins.load( editor.config.skin, 'editor', function()
     233                CKEDITOR.skins.load( editor, 'editor', function()
    232234                        {
    233235                                loadTheme( editor );
    234236                        });
  • _source/core/skins.js

     
    1818        // Holds the list of loaded skins.
    1919        var loaded = {};
    2020        var preloaded = {};
     21        var paths = {};
    2122
    2223        var loadedPart = function( skinName, part, callback )
    2324        {
     
    2829                {
    2930                        for ( var n = 0 ; n < fileNames.length ; n++ )
    3031                        {
    31                                 fileNames[ n ] = CKEDITOR.getUrl(
    32                                         '_source/' +    // %REMOVE_LINE%
    33                                         'skins/' + skinName + '/' + fileNames[ n ] );
     32                                fileNames[ n ] = paths[ skinName ] + fileNames[ n ];
    3433                        }
    3534                };
    3635
     
    133132                {
    134133                        loaded[ skinName ] = skinDefinition;
    135134
    136                         skinDefinition.skinPath = CKEDITOR.getUrl(
    137                                         '_source/' +    // %REMOVE_LINE%
    138                                         'skins/' + skinName + '/' );
     135                        skinDefinition.skinPath = paths[ skinName ];
    139136                },
    140137
    141138                /**
     
    149146                 *              part files are loaded.
    150147                 * @example
    151148                 */
    152                 load : function( skinName, skinPart, callback )
     149                load : function( editor, skinPart, callback )
    153150                {
     151                        var skinName = editor.skinName,
     152                                skinPath = editor.skinPath;
     153
    154154                        if ( loaded[ skinName ] )
    155155                                loadedPart( skinName, skinPart, callback );
    156156                        else
    157157                        {
    158                                 CKEDITOR.scriptLoader.load( CKEDITOR.getUrl(
    159                                         '_source/' +    // %REMOVE_LINE%
    160                                         'skins/' + skinName + '/skin.js' ), function()
     158                                paths[ skinName ] = skinPath;
     159                                CKEDITOR.scriptLoader.load( skinPath + 'skin.js', function()
    161160                                                {
    162161                                                        loadedPart( skinName, skinPart, callback );
    163                                                 } );
     162                                                });
    164163                        }
    165164                }
    166165         };
  • _source/plugins/dialog/plugin.js

     
    399399                this._.dummyText = CKEDITOR.dom.element.createFromHtml( '<input type="text" style="position: absolute; left: -100000px; top: -100000px" />' );
    400400                this._.dummyText.appendTo( themeBuilt.element );
    401401
    402                 CKEDITOR.skins.load( editor.config.skin, 'dialog' );
     402                CKEDITOR.skins.load( editor, 'dialog' );
    403403        };
    404404
    405405        CKEDITOR.dialog.prototype =
     
    422422                                CKEDITOR.dialog.fire( 'resize',
    423423                                        {
    424424                                                dialog : this,
    425                                                 skin : this._.editor.config.skin,
     425                                                skin : this._.editor.skinName,
    426426                                                width : width,
    427427                                                height : height
    428428                                        }, this._.editor );
     
    13341334                        element = dialog.getElement().getFirst(),
    13351335                        editor = dialog.getParentEditor(),
    13361336                        magnetDistance = editor.config.dialog_magnetDistance,
    1337                         margins = skinData[ editor.config.skin ].margins || [ 0, 0, 0, 0 ];
     1337                        margins = skinData[ editor.skinName ].margins || [ 0, 0, 0, 0 ];
    13381338
    13391339                function mouseMoveHandler( evt )
    13401340                {
     
    14071407                        minWidth = definition.minWidth || 0,
    14081408                        minHeight = definition.minHeight || 0,
    14091409                        resizable = definition.resizable,
    1410                         margins = skinData[ dialog.getParentEditor().config.skin ].margins || [ 0, 0, 0, 0 ];
     1410                        margins = skinData[ dialog.getParentEditor().skinName ].margins || [ 0, 0, 0, 0 ];
    14111411
    14121412                function topSizer( coords, dy )
    14131413                {
  • _source/plugins/image/dialogs/image.js

     
    173173                        original.removeListener( 'abort', onImgLoadErrorEvent );
    174174
    175175                        // Set Error image.
    176                         var noimage = CKEDITOR.getUrl(
    177                                 '_source/' +    // %REMOVE_LINE%
    178                                 'skins/' + editor.config.skin + '/images/dialog.noimage.gif' );
     176                        var noimage = CKEDITOR.getUrl( editor.skinPath + 'images/dialog.noimage.gif' );
    179177
    180178                        if ( this.preview )
    181179                                this.preview.setAttribute( 'src', noimage );
  • _source/plugins/templates/dialogs/templates.js

     
    9898        CKEDITOR.dialog.add( 'templates', function( editor )
    9999                {
    100100                        // Load skin at first.
    101                         CKEDITOR.skins.load( 'default', 'templates' );
     101                        CKEDITOR.skins.load( editor, 'templates' );
    102102
    103103                        /**
    104104                         * Load templates once.
  • _source/themes/default/theme.js

     
    112112                        var baseIdNumber = CKEDITOR.tools.getNextNumber();
    113113
    114114                        var element = CKEDITOR.dom.element.createFromHtml( [
    115                                         '<div class="cke_skin_', editor.config.skin,
     115                                        '<div class="cke_skin_', editor.skinName,
    116116                                                ' ', browserCssClass,
    117117                                                ' ', CKEDITOR.env.quirks ? 'cke_mode_quirks' : 'cke_mode_standards',
    118118                                                ' cke_', editor.lang.dir,
© 2003 – 2022, CKSource sp. z o.o. sp.k. All rights reserved. | Terms of use | Privacy policy