Changeset 7162


Ignore:
Timestamp:
08/02/11 06:24:19 (4 years ago)
Author:
garry.yao
Message:

More friendly pagebreak on clipboard.

Location:
CKEditor/branches/features/v4-paste/_source/plugins
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • CKEditor/branches/features/v4-paste/_source/plugins/htmldataprocessor/plugin.js

    r7152 r7162  
    6767                return function( node )
    6868                {
     69                        if ( node.attributes.contenteditable == 'false' )
     70                                return;
     71
    6972                        trimFillers( node, !isOutput );
    7073
  • CKEditor/branches/features/v4-paste/_source/plugins/pagebreak/plugin.js

    r6930 r7162  
    1 /*
     1/*
    22Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
    33For licensing, see LICENSE.html or http://ckeditor.com/license
     
    6464                        htmlFilter.addRules(
    6565                        {
    66                                 attributes : {
    67                                         'class' : function( value, element )
     66                                elements :
     67                                {
     68                                        'div' : function( element )
    6869                                        {
    69                                                 var className =  value.replace( 'cke_pagebreak', '' );
    70                                                 if ( className != value )
     70                                                var className =  element.attributes[ 'class' ];
     71                                                if ( className && className.indexOf( 'cke_pagebreak' ) != -1 )
    7172                                                {
    72                                                         var span = CKEDITOR.htmlParser.fragment.fromHtml( '<span style="display: none;">&nbsp;</span>' );
    73                                                         element.children.length = 0;
    74                                                         element.add( span );
    7573                                                        var attrs = element.attributes;
     74                                                        delete attrs[ 'class' ];
    7675                                                        delete attrs[ 'aria-label' ];
    7776                                                        delete attrs.contenteditable;
    7877                                                        delete attrs.title;
     78                                                        element.children.length = 0;
    7979                                                }
    80                                                 return className;
    8180                                        }
    8281                                }
    83                         }, 5 );
     82                        }, 20 );
    8483                }
    8584
     
    9796                                                                childStyle = child && ( child.name == 'span' ) && child.attributes.style;
    9897
    99                                                         if ( childStyle && ( /page-break-after\s*:\s*always/i ).test( style ) && ( /display\s*:\s*none/i ).test( childStyle ) )
     98                                                        if ( /page-break-after\s*:\s*always/i.test( style ) )
    10099                                                        {
    101                                                                 attributes.contenteditable = "false";
    102                                                                 attributes[ 'class' ] = "cke_pagebreak";
    103                                                                 attributes[ 'data-cke-display-name' ] = "pagebreak";
    104                                                                 attributes[ 'aria-label' ] = label;
    105                                                                 attributes[ 'title' ] = label;
    106 
    107                                                                 element.children.length = 0;
     100                                                                if ( !element.children.length
     101                                                                                // Back-compat.
     102                                                                                || childStyle && /display\s*:\s*none/i .test( childStyle ) )
     103                                                                {
     104                                                                        attributes.contenteditable = "false";
     105                                                                        attributes[ 'class' ] = "cke_pagebreak";
     106                                                                        attributes[ 'data-cke-display-name' ] = "pagebreak";
     107                                                                        attributes[ 'aria-label' ] = label;
     108                                                                        attributes[ 'title' ] = label;
     109                                                                        element.children.length = 0;
     110                                                                }
    108111                                                        }
    109112                                                }
    110113                                        }
    111                                 });
     114                                }, 5 );
    112115                }
    113116        },
  • CKEditor/branches/features/v4-paste/_source/plugins/wysiwygarea/plugin.js

    r7161 r7162  
    414414                        // 2. It doesn't end with one inner block; (#7467)
    415415                        // 3. It doesn't have bogus br yet.
     416                        // 4. It's an editable block.
    416417                        if ( pathBlock
    417418                                        && pathBlock.isBlockBoundary()
     419                                        && !pathBlock.isReadOnly()
    418420                                        && !( lastNode && lastNode.type == CKEDITOR.NODE_ELEMENT && lastNode.isBlockBoundary() )
    419421                                        && !pathBlock.is( 'pre' )
Note: See TracChangeset for help on using the changeset viewer.
© 2003 – 2015 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy