JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
vanilla ckeditor-3.4.3
[ckeditor.git] / _source / plugins / wysiwygarea / plugin.js
index 5ea1f1a..df2fd07 100644 (file)
@@ -18,6 +18,13 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
 \r
        var notWhitespaceEval = CKEDITOR.dom.walker.whitespaces( true );\r
 \r
+       // Elements that could have empty new line around, including table, pre-formatted block, hr, page-break. (#6554)\r
+       function nonExitable( element )\r
+       {\r
+               return ( element.getName() in nonExitableElementNames )\r
+                               || element.isBlockBoundary() && CKEDITOR.dtd.$empty[ element.getName() ];\r
+       }\r
+\r
        function checkReadOnly( selection )\r
        {\r
                if ( selection.getType() == CKEDITOR.SELECTION_ELEMENT )\r
@@ -317,7 +324,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
                                var element = fixedBlock.getNext( isNotWhitespace );\r
                                if ( element &&\r
                                         element.type == CKEDITOR.NODE_ELEMENT &&\r
-                                        !nonExitableElementNames[ element.getName() ] )\r
+                                        !nonExitable( element ) )\r
                                {\r
                                        range.moveToElementEditStart( element );\r
                                        fixedBlock.remove();\r
@@ -327,7 +334,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
                                        element = fixedBlock.getPrevious( isNotWhitespace );\r
                                        if ( element &&\r
                                                 element.type == CKEDITOR.NODE_ELEMENT &&\r
-                                                !nonExitableElementNames[ element.getName() ] )\r
+                                                !nonExitable( element ) )\r
                                        {\r
                                                range.moveToElementEditEnd( element );\r
                                                fixedBlock.remove();\r
@@ -1026,7 +1033,7 @@ For licensing, see LICENSE.html or http://ckeditor.com/license
                                {\r
                                        focusGrabber = editor.container.append( CKEDITOR.dom.element.createFromHtml(\r
                                                // Use 'span' instead of anything else to fly under the screen-reader radar. (#5049)\r
-                                               '<span tabindex="-1" style="position:absolute; left:-10000" role="presentation"></span>' ) );\r
+                                               '<span tabindex="-1" style="position:absolute;" role="presentation"></span>' ) );\r
 \r
                                        focusGrabber.on( 'focus', function()\r
                                                {\r