Ticket #3526: 3526_2.patch

File 3526_2.patch, 2.1 KB (added by Garry Yao, 10 years ago)
  • _source/core/tools.js

     
    169169                },
    170170
    171171                /**
     172                 * Treats any object as a hashtable and fetches the list of its property names.
     173                 * Note:  There's no guarantee on declaration or lexicographical order.
     174                 * @param object
     175                 */
     176                keys: function( object )
     177                {
     178                        var results = [];
     179                        for ( var property in object )
     180                            if ( object.hasOwnProperty( property ) )
     181                                        results.push( property );
     182                        return results;
     183                },
     184
     185                /**
    172186                 * Transforms a CSS property name to its relative DOM style name.
    173187                 * @param {String} cssName The CSS property name.
    174188                 * @returns {String} The transformed name.
  • _source/plugins/wysiwygarea/plugin.js

     
    371371                                                        },
    372372                                                        0 );
    373373                                        };
    374 
     374                                        var emptyParagraphRegexp = new RegExp( "\\s*<(" +
     375                                             CKEDITOR.tools.keys( CKEDITOR.dtd.$block ).join('|') +
     376                                             ")[^>]*>\\s*(?:<br[^>]*>|&nbsp;|&#160;)\\s*(:?</\\1>)?\\s*$", "i" );
    375377                                        editor.addMode( 'wysiwyg',
    376378                                                {
    377379                                                        load : function( holderElement, data, isSnapshot )
     
    456458                                                                if ( editor.dataProcessor )
    457459                                                                        data = editor.dataProcessor.toDataFormat( data, ( editor.config.enterMode != CKEDITOR.ENTER_BR ) );
    458460
     461                                                                // Strip single empty paragraph within document.
     462                                                                if ( editor.config.ignoreEmptyParagraph &&
     463                                                                         emptyParagraphRegexp.test( data ) )
     464                                                                                data = '';
    459465                                                                return data;
    460466                                                        },
    461467
     
    533539 * config.disableNativeSpellChecker = false;
    534540 */
    535541CKEDITOR.config.disableNativeSpellChecker = true;
     542/**
     543 * The editor will post an empty value ("") if you have just an empty paragraph on it, like this:
     544 * @example
     545 * <p></p>
     546 * <p><br /></p>
     547 * <p><b></b></p>
     548 */
     549CKEDITOR.config.ignoreEmptyParagraph = true;
© 2003 – 2019 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy