IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
|
|
|
797 | 797 | var bm = cursor.createBookmark(); |
798 | 798 | |
799 | 799 | // Kill original bogus; |
800 | | var currentPath = new CKEDITOR.dom.elementPath( cursor.startContainer ); |
801 | | var currentBlock = currentPath.lastElement.getAscendant( 'li', 1 ) || currentPath.block; |
| 800 | var currentPath = new CKEDITOR.dom.elementPath( cursor.startContainer ), |
| 801 | pathBlock = currentPath.block, |
| 802 | currentBlock = currentPath.lastElement.getAscendant( 'li', 1 ) || pathBlock, |
| 803 | nextPath = new CKEDITOR.dom.elementPath( nextCursor.startContainer ), |
| 804 | nextLi = nextPath.contains( CKEDITOR.dtd.$listItem ), |
| 805 | nextList = nextPath.contains( CKEDITOR.dtd.$list ), |
| 806 | last; |
802 | 807 | |
803 | | var bogus = currentPath.block.getBogus(); |
804 | | bogus && bogus.remove(); |
| 808 | // Remove bogus node the current block/pseudo block. |
| 809 | if ( pathBlock ) |
| 810 | { |
| 811 | var bogus = pathBlock.getBogus(); |
| 812 | bogus && bogus.remove(); |
| 813 | } |
| 814 | else if ( nextList ) |
| 815 | { |
| 816 | last = nextList.getPrevious( nonEmpty ); |
| 817 | if ( last && blockBogus( last ) ) |
| 818 | last.remove(); |
| 819 | } |
805 | 820 | |
806 | 821 | // Kill the tail br in extracted. |
807 | | var last = frag.getLast(); |
| 822 | last = frag.getLast(); |
808 | 823 | if ( last && last.type == CKEDITOR.NODE_ELEMENT && last.is( 'br' ) ) |
809 | 824 | last.remove(); |
810 | 825 | |
… |
… |
|
815 | 830 | else |
816 | 831 | cursor.startContainer.append( frag ); |
817 | 832 | |
818 | | var nextPath = new CKEDITOR.dom.elementPath( nextCursor.startContainer ), |
819 | | nextLi = nextCursor.startContainer.getAscendant( 'li', 1 ); |
820 | | |
821 | 833 | // Move the sub list nested in the next list item. |
822 | 834 | if ( nextLi ) |
823 | 835 | { |
… |
… |
|
923 | 935 | var body = editor.document.getBody(); |
924 | 936 | var walker = new CKEDITOR.dom.walker( range.clone() ); |
925 | 937 | walker.evaluator = function( node ) { return nonEmpty( node ) && !blockBogus( node ); }; |
| 938 | |
| 939 | // Backspace/Del behavior at the start/end of table is handled in core. |
926 | 940 | walker.guard = function( node, isOut ) { return !( isOut && node.type == CKEDITOR.NODE_ELEMENT && node.is( 'table' ) ) }; |
927 | 941 | |
928 | 942 | var cursor = range.clone(); |
… |
… |
|
1079 | 1093 | { |
1080 | 1094 | range.moveToElementEditStart( next ); |
1081 | 1095 | range.select(); |
| 1096 | evt.cancel(); |
| 1097 | } |
| 1098 | // Merge the first list item with the current line. |
| 1099 | else |
| 1100 | { |
| 1101 | nextLine = range.clone(); |
| 1102 | nextLine.moveToElementEditStart( next ); |
| 1103 | joinNextLineToCursor( editor, cursor, nextLine ); |
1082 | 1104 | evt.cancel(); |
1083 | 1105 | } |
1084 | 1106 | } |