Index: /FCKeditor/trunk/editor/_source/internals/fck_gecko.js
===================================================================
--- /FCKeditor/trunk/editor/_source/internals/fck_gecko.js	(revision 811)
+++ /FCKeditor/trunk/editor/_source/internals/fck_gecko.js	(revision 812)
@@ -153,5 +153,4 @@
 					// things are a little bit more interesting if our parent is not a block node
 					// due to the weired ways how Gecko's caret acts...
-
 					var stopNode = node.nextSibling ;
 
@@ -174,5 +173,5 @@
 					// note that the dummy marker below is NEEDED, otherwise the caret's behavior will 
 					// be broken in Gecko.
-					var marker = FCK.EditorDocument.createTextNode( "" ) ;
+					var marker = FCK.EditorDocument.createTextNode( '' ) ;
 					if ( stopNode )
 						node.parentNode.insertBefore( marker, stopNode ) ;
@@ -252,10 +251,11 @@
 
 	// Kludge for buggy Gecko caret positioning logic (Bug #393 and #1056)
-	if ( FCKBrowserInfo.IsGecko )
+	if ( FCKBrowserInfo.IsGecko || FCKBrowserInfo.IsOpera )
 	{
 		this.EditorDocument.addEventListener( 'keypress', this._ExecCheckCaret, false ) ;
 		this.EditorDocument.addEventListener( 'click', this._ExecCheckCaret, false ) ;
+	}
+	if ( FCKBrowserInfo.IsGecko )
 		this.AttachToOnSelectionChange( this._ExecCheckEmptyBlock ) ;
-	}
 
 	// Reset the context menu.
