Changeset 7545


Ignore:
Timestamp:
07/06/2012 09:14:51 AM (3 years ago)
Author:
garry.yao
Message:

#9094: Fixed a regression of [7542] which breaks flash objects parsing.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • CKEditor/trunk/_source/core/htmlparser/element.js

    r7542 r7545  
    2626         * @example
    2727         */
    28         this.attributes = attributes || ( attributes = {} );
     28        this.attributes = attributes || {};
    2929
    3030        /**
     
    3535        this.children = [];
    3636
    37         var tagName = attributes[ 'data-cke-real-element-type' ] || name || '';
    38 
    39         // Reveal the real semantic of our internal custom tag name (#6639).
    40         var internalTag = tagName.match( /^cke:(.*)/ );
    41         internalTag && ( tagName = internalTag[ 1 ] );
    42 
    43         var dtd                 = CKEDITOR.dtd,
    44                 isBlockLike     = !!( dtd.$nonBodyContent[ tagName ]
    45                                 || dtd.$block[ tagName ]
    46                                 || dtd.$listItem[ tagName ]
    47                                 || dtd.$tableContent[ tagName ]
    48                                 || dtd.$nonEditable[ tagName ]
    49                                 || tagName == 'br' ),
    50                 isEmpty = !!dtd.$empty[ tagName ];
    51 
    52         this.isEmpty    = isEmpty;
    53         this.isUnknown  = !dtd[ tagName ];
     37        // Reveal the real semantic of our internal custom tag name (#6639),
     38        // when resolving whether it's block like.
     39        var realName = name || '',
     40                prefixed = realName.match( /^cke:(.*)/ );
     41        prefixed && ( realName = prefixed[ 1 ] );
     42
     43        var isBlockLike = !!( CKEDITOR.dtd.$nonBodyContent[ realName ]
     44                                || CKEDITOR.dtd.$block[ realName ]
     45                                || CKEDITOR.dtd.$listItem[ realName ]
     46                                || CKEDITOR.dtd.$tableContent[ realName ]
     47                                || CKEDITOR.dtd.$nonEditable[ realName ]
     48                                || realName == 'br' );
     49
     50        this.isEmpty    = !!CKEDITOR.dtd.$empty[ name ];
     51        this.isUnknown  = !CKEDITOR.dtd[ name ];
    5452
    5553        /** @private */
     
    5755        {
    5856                isBlockLike : isBlockLike,
    59                 hasInlineStarted : isEmpty || !isBlockLike
     57                hasInlineStarted : this.isEmpty || !isBlockLike
    6058        };
    6159};
Note: See TracChangeset for help on using the changeset viewer.
© 2003 – 2012 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy