/*\r
-Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.\r
+Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved.\r
For licensing, see LICENSE.html or http://ckeditor.com/license\r
*/\r
\r
{\r
var editor = evt.editor,\r
path = evt.data.path;\r
+\r
+ if ( editor.readOnly )\r
+ return;\r
+\r
var useComputedState = editor.config.useComputedState,\r
selectedElement;\r
\r
selectedElement = selectedElement || path.block || path.blockLimit;\r
\r
// If we're having BODY here, user probably done CTRL+A, let's try to get the enclosed node, if any.\r
- selectedElement.is( 'body' ) &&\r
- ( selectedElement = editor.getSelection().getRanges()[ 0 ].getEnclosedNode() );\r
+ if ( selectedElement.is( 'body' ) )\r
+ {\r
+ var enclosedNode = editor.getSelection().getRanges()[ 0 ].getEnclosedNode();\r
+ enclosedNode && enclosedNode.type == CKEDITOR.NODE_ELEMENT && ( selectedElement = enclosedNode );\r
+ }\r
\r
- if ( !selectedElement )\r
+ if ( !selectedElement )\r
return;\r
\r
var selectionDir = useComputedState ?\r