\r
editor.on( 'contentDomUnload', function()\r
{\r
- getSpaceElement().setHtml( emptyHtml );\r
+ // If the spaceElement hasn't been initialized, don't try to do it at this time\r
+ // Only reuse existing reference.\r
+ spaceElement && spaceElement.setHtml( emptyHtml );\r
});\r
\r
editor.addCommand( 'elementsPathFocus', commands.toolbarFocus );\r
editor.focus();\r
\r
var element = editor._.elementsPath.list[ elementIndex ];\r
- editor.getSelection().selectElement( element );\r
+\r
+ if ( element.is( 'body' ) )\r
+ {\r
+ var range = new CKEDITOR.dom.range( editor.document );\r
+ range.selectNodeContents( element );\r
+ range.select();\r
+ }\r
+ else\r
+ editor.getSelection().selectElement( element );\r
\r
return false;\r
},\r
\r
ev = new CKEDITOR.dom.event( ev );\r
\r
+ var rtl = editor.lang.dir == 'rtl';\r
switch ( ev.getKeystroke() )\r
{\r
- case 37 : // LEFT-ARROW\r
+ case rtl ? 39 : 37 : // LEFT-ARROW\r
case 9 : // TAB\r
element = CKEDITOR.document.getById( idBase + ( elementIndex + 1 ) );\r
if ( !element )\r
element.focus();\r
return false;\r
\r
- case 39 : // RIGHT-ARROW\r
+ case rtl ? 37 : 39 : // RIGHT-ARROW\r
case CKEDITOR.SHIFT + 9 : // SHIFT + TAB\r
element = CKEDITOR.document.getById( idBase + ( elementIndex - 1 ) );\r
if ( !element )\r