+ var sel = editor.getSelection(),\r
+ selected = sel.getSelectedElement(),\r
+ range = sel.getRanges()[ 0 ],\r
+ path = new CKEDITOR.dom.elementPath( range.startContainer ),\r
+ block,\r
+ parent,\r
+ next,\r
+ rtl = keyCode == 8;\r
+\r
+ // Override keystrokes which should have deletion behavior\r
+ // on fully selected element . (#4047) (#7645)\r
+ if ( selected )\r
+ {\r
+ // Make undo snapshot.\r
+ editor.fire( 'saveSnapshot' );\r
+\r
+ // Delete any element that 'hasLayout' (e.g. hr,table) in IE8 will\r
+ // break up the selection, safely manage it here. (#4795)\r
+ range.moveToPosition( selected, CKEDITOR.POSITION_BEFORE_START );\r
+ // Remove the control manually.\r
+ selected.remove();\r
+ range.select();\r
+\r
+ editor.fire( 'saveSnapshot' );\r