JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
vanilla ckeditor-3.4.2
[ckeditor.git] / _source / plugins / enterkey / plugin.js
index 10b7e62..5046b1d 100644 (file)
@@ -24,6 +24,11 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
                        // Get the range for the current selection.\r
                        range = range || getRange( editor );\r
 \r
+                       // We may not have valid ranges to work on, like when inside a\r
+                       // contenteditable=false element.\r
+                       if ( !range )\r
+                               return;\r
+\r
                        var doc = range.document;\r
 \r
                        // Exit the list when we're inside an empty list item block. (#5376)\r
@@ -64,7 +69,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
                                if ( node.is( 'li' ) )\r
                                {\r
                                        nextBlock.breakParent( node );\r
-                                       nextBlock.move( nextBlock.getNext(), true );\r
+                                       nextBlock.move( nextBlock.getNext(), 1 );\r
                                }\r
                        }\r
                        else if ( previousBlock && ( node = previousBlock.getParent() ) && node.is( 'li' ) )\r
@@ -189,6 +194,11 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
                        // Get the range for the current selection.\r
                        range = range || getRange( editor );\r
 \r
+                       // We may not have valid ranges to work on, like when inside a\r
+                       // contenteditable=false element.\r
+                       if ( !range )\r
+                               return;\r
+\r
                        var doc = range.document;\r
 \r
                        // Determine the block element to be used.\r
@@ -307,7 +317,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
                        return true;\r
                }\r
                else\r
-                       return enter( editor, editor.config.shiftEnterMode, true );\r
+                       return enter( editor, editor.config.shiftEnterMode, 1 );\r
        }\r
 \r
        function enter( editor, mode, forceMode )\r
@@ -325,7 +335,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
                setTimeout( function()\r
                        {\r
                                editor.fire( 'saveSnapshot' );  // Save undo step.\r
-                               if ( mode == CKEDITOR.ENTER_BR || editor.getSelection().getStartElement().hasAscendant( 'pre', true ) )\r
+                               if ( mode == CKEDITOR.ENTER_BR || editor.getSelection().getStartElement().hasAscendant( 'pre', 1 ) )\r
                                        enterBr( editor, mode, null, forceMode );\r
                                else\r
                                        enterBlock( editor, mode, null, forceMode );\r
@@ -339,7 +349,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
        function getRange( editor )\r
        {\r
                // Get the selection ranges.\r
-               var ranges = editor.getSelection().getRanges();\r
+               var ranges = editor.getSelection().getRanges( true );\r
 \r
                // Delete the contents of all ranges except the first one.\r
                for ( var i = ranges.length - 1 ; i > 0 ; i-- )\r