Index: /FCKeditor/trunk/editor/_source/internals/fck_gecko.js
===================================================================
--- /FCKeditor/trunk/editor/_source/internals/fck_gecko.js	(revision 501)
+++ /FCKeditor/trunk/editor/_source/internals/fck_gecko.js	(revision 502)
@@ -181,4 +181,7 @@
 	html = html.replace( FCKRegexLib.EmOpener, '<i$1' ) ;
 	html = html.replace( FCKRegexLib.EmCloser, '<\/i>' ) ;
+	
+	// Save an undo snapshot first.
+	FCKUndo.SaveUndoStep() ;
 
 	// Delete the actual selection.
@@ -202,4 +205,7 @@
 
 	this.Focus() ;
+
+	// For some strange reason the SaveUndoStep() call doesn't activate the undo button at the first InsertHtml() call.
+	this.Events.FireEvent( "OnSelectionChange" ) ;
 }
 
Index: /FCKeditor/trunk/editor/_source/internals/fck_ie.js
===================================================================
--- /FCKeditor/trunk/editor/_source/internals/fck_ie.js	(revision 501)
+++ /FCKeditor/trunk/editor/_source/internals/fck_ie.js	(revision 502)
@@ -153,4 +153,7 @@
 
 	FCKDocumentProcessor.Process( FCK.EditorDocument ) ;
+
+	// For some strange reason the SaveUndoStep() call doesn't activate the undo button at the first InsertHtml() call.
+	this.Events.FireEvent( "OnSelectionChange" ) ;
 }
 
