Ticket #3940: 3940_3.patch

File 3940_3.patch, 3.5 KB (added by Tobiasz Cudnik, 15 years ago)
  • _source/plugins/list/plugin.js

     
    176176
    177177        function onSelectionChange( evt )
    178178        {
    179                 var elements = evt.data.path.elements;
     179                var path = evt.data.path,
     180                        blockLimit = path.blockLimit,
     181                        elements = path.elements,
     182                        element;
    180183
    181                 for ( var i = 0 ; i < elements.length ; i++ )
     184                // Grouping should only happen under blockLimit.(#3940).
     185                for ( var i = 0 ; i < elements.length && ( element = elements[ i ] )
     186                          && !element.equals( blockLimit ); i++ )
    182187                {
    183188                        if ( listNodeNames[ elements[i].getName() ] )
    184189                        {
     
    425430                                        var path = new CKEDITOR.dom.elementPath( block ),
    426431                                                listNode = null,
    427432                                                processedFlag = false,
    428                                                 blockLimit = path.blockLimit;
     433                                                blockLimit = path.blockLimit,
     434                                                element;
    429435
    430436                                        // First, try to group by a list ancestor.
    431                                         for ( var i = 0 ; i < path.elements.length ; i++ )
     437                                        for ( var i = 0 ; i < path.elements.length &&
     438                                                  ( element = path.elements[ i ] ) && !element.equals( blockLimit ); i++ )
    432439                                        {
    433                                                 var element = path.elements[i];
    434440                                                if ( listNodeNames[ element.getName() ] )
    435441                                                {
    436442                                                        // If we've encountered a list inside a block limit
  • _source/core/dom/node.js

     
    394394                        return ( parent && parent.nodeType == 1 ) ? new CKEDITOR.dom.node( parent ) : null;
    395395                },
    396396
    397                 getParents : function()
     397                getParents : function( closerFirst )
    398398                {
    399399                        var node = this;
    400400                        var parents = [];
    401401
    402402                        do
    403403                        {
    404                                 parents.unshift( node );
     404                                parents[  closerFirst ? 'push' : 'unshift' ]( node );
    405405                        }
    406406                        while ( ( node = node.getParent() ) )
    407407
  • _source/plugins/indent/plugin.js

     
    116116                // list's DOM tree itself. The array model demands that it knows as much as
    117117                // possible about the surrounding lists, we need to feed it the further
    118118                // ancestor node that is still a list.
    119                 var listParents = listNode.getParents();
     119                var listParents = listNode.getParents( true );
    120120                for ( var i = 0 ; i < listParents.length ; i++ )
    121121                {
    122122                        if ( listParents[i].getName && listNodeNames[ listParents[i].getName() ] )
  • CHANGES.html

     
    130130                <li><a href="http://dev.fckeditor.net/ticket/3742">#3742</a> : Fixed wrong dialog layout for dialogs without tab bar in IE RTL mode .</li>
    131131                <li><a href="http://dev.fckeditor.net/ticket/3671">#3671</a> : Fixed body fixing should be applied to the real type under fake elements.</li>
    132132                <li><a href="http://dev.fckeditor.net/ticket/3836">#3836</a> : Fixed remove list in enterMode=BR will merge sibling text to one line.</li>
     133                <li><a href="http://dev.fckeditor.net/ticket/3940">#3940</a> : Fixed list operation doesn't stop at table.</li>
    133134                <li><a href="http://dev.fckeditor.net/ticket/3949">#3949</a> : Fixed enterKey within pre-formatted text introduce wrong line-break.</li>
    134135        </ul>
    135136        <h3>
© 2003 – 2022, CKSource sp. z o.o. sp.k. All rights reserved. | Terms of use | Privacy policy