Index: /FCKeditor/trunk/editor/_source/commandclasses/fckblockquotecommand.js
===================================================================
--- /FCKeditor/trunk/editor/_source/commandclasses/fckblockquotecommand.js	(revision 917)
+++ /FCKeditor/trunk/editor/_source/commandclasses/fckblockquotecommand.js	(revision 918)
@@ -167,4 +167,6 @@
 		range.MoveToBookmark( bookmark ) ;
 		range.Select() ;
+
+		FCK.Focus() ;
 		FCK.Events.FireEvent( 'OnSelectionChange' ) ;
 	},
Index: /FCKeditor/trunk/editor/_source/commandclasses/fckcorestylecommand.js
===================================================================
--- /FCKeditor/trunk/editor/_source/commandclasses/fckcorestylecommand.js	(revision 917)
+++ /FCKeditor/trunk/editor/_source/commandclasses/fckcorestylecommand.js	(revision 918)
@@ -23,5 +23,5 @@
  * Italic.
  */
- 
+
  var FCKCoreStyleCommand = function( coreStyleName )
  {
@@ -29,9 +29,9 @@
  	this.StyleName = '_FCK_' + coreStyleName ;
  	this.IsActive = false ;
- 	
+
  	FCKStyles.AttachStyleStateChange( this.StyleName, this._OnStyleStateChange, this ) ;
  }
- 
- FCKCoreStyleCommand.prototype = 
+
+ FCKCoreStyleCommand.prototype =
  {
 	Execute : function()
@@ -43,11 +43,14 @@
 		else
 			FCKStyles.ApplyStyle( this.StyleName ) ;
+
+		FCK.Focus() ;
+		FCK.Events.FireEvent( 'OnSelectionChange' ) ;
 	},
-	
+
 	GetState : function()
 	{
 		return this.IsActive ? FCK_TRISTATE_ON : FCK_TRISTATE_OFF ;
 	},
-	
+
 	_OnStyleStateChange : function( styleName, isActive )
 	{
Index: /FCKeditor/trunk/editor/_source/commandclasses/fckindentcommands.js
===================================================================
--- /FCKeditor/trunk/editor/_source/commandclasses/fckindentcommands.js	(revision 917)
+++ /FCKeditor/trunk/editor/_source/commandclasses/fckindentcommands.js	(revision 918)
@@ -66,4 +66,6 @@
 		range.MoveToBookmark( bookmark ) ;
 		range.Select() ;
+
+		FCK.Focus() ;
 		FCK.Events.FireEvent( 'OnSelectionChange' ) ;
 	},
@@ -80,5 +82,5 @@
 
 		// If we're not in a list, and the starting block's indentation is zero, and the current
-		// command is the outdent command, then we should return FCK_TRISTATE_DISABLED. 
+		// command is the outdent command, then we should return FCK_TRISTATE_DISABLED.
 		var startContainer = FCKSelection.GetBoundaryParentElement( true ) ;
 		var endContainer = FCKSelection.GetBoundaryParentElement( false ) ;
@@ -164,5 +166,5 @@
 					block.className = className ;
 				else
-					block.className = ( className.length > 0 ? className + ' ' : '' ) + 
+					block.className = ( className.length > 0 ? className + ' ' : '' ) +
 						FCKConfig.IndentClasses[indentStep - 1] ;
 			}
@@ -189,5 +191,5 @@
 		var startContainer = range.StartContainer ;
 		var endContainer = range.EndContainer ;
-		while ( startContainer && startContainer.parentNode != listNode ) 
+		while ( startContainer && startContainer.parentNode != listNode )
 			startContainer = startContainer.parentNode ;
 		while ( endContainer && endContainer.parentNode != listNode )
@@ -201,5 +203,5 @@
 		var itemsToMove = [] ;
 		var stopFlag = false ;
-		while ( stopFlag == false ) 
+		while ( stopFlag == false )
 		{
 			if ( block == endContainer )
@@ -212,5 +214,5 @@
 
 		// Do indent or outdent operations on the array model of the list, not the list's DOM tree itself.
-		// The array model demands that it knows as much as possible about the surrounding lists, we need 
+		// The array model demands that it knows as much as possible about the surrounding lists, we need
 		// to feed it the further ancestor node that is still a list.
 		var listParents = FCKDomTools.GetParents( listNode ) ;
@@ -233,5 +235,5 @@
 		// Apply indenting or outdenting on the array.
 		var baseIndent = listArray[lastItem._FCK_ListArray_Index].indent ;
-		for ( var i = startItem._FCK_ListArray_Index ; i <= lastItem._FCK_ListArray_Index ; i++ ) 
+		for ( var i = startItem._FCK_ListArray_Index ; i <= lastItem._FCK_ListArray_Index ; i++ )
 			listArray[i].indent += indentOffset ;
 		for ( var i = lastItem._FCK_ListArray_Index + 1 ; i < listArray.length && listArray[i].indent > baseIndent ; i++ )
Index: /FCKeditor/trunk/editor/_source/commandclasses/fckjustifycommands.js
===================================================================
--- /FCKeditor/trunk/editor/_source/commandclasses/fckjustifycommands.js	(revision 917)
+++ /FCKeditor/trunk/editor/_source/commandclasses/fckjustifycommands.js	(revision 918)
@@ -85,5 +85,5 @@
 		// Save an undo snapshot before doing anything.
 		FCKUndo.SaveUndoStep() ;
-		
+
 		var range = new FCKDomRange( FCK.EditorWindow ) ;
 		range.MoveToSelection() ;
@@ -139,4 +139,5 @@
 		range.Select() ;
 
+		FCK.Focus() ;
 		FCK.Events.FireEvent( 'OnSelectionChange' ) ;
 	},
Index: /FCKeditor/trunk/editor/_source/commandclasses/fcklistcommands.js
===================================================================
--- /FCKeditor/trunk/editor/_source/commandclasses/fcklistcommands.js	(revision 917)
+++ /FCKeditor/trunk/editor/_source/commandclasses/fcklistcommands.js	(revision 918)
@@ -28,5 +28,5 @@
 }
 
-FCKListCommand.prototype = 
+FCKListCommand.prototype =
 {
 	GetState : function()
@@ -177,5 +177,5 @@
 				stopFlag = true ;
 			}
-			
+
 			if ( currentNode && currentNode.nodeName.IEquals( this.TagName ) )
 			{
@@ -207,4 +207,6 @@
 		range.MoveToBookmark( bookmark ) ;
 		range.Select() ;
+
+		FCK.Focus() ;
 		FCK.Events.FireEvent( 'OnSelectionChange' ) ;
 	},
@@ -251,5 +253,5 @@
 		if ( contents.length == 1 && contents[0] == groupObj.root )
 		{
-			var divBlock = doc.createElement( 'div' ); 
+			var divBlock = doc.createElement( 'div' );
 			while ( contents[0].firstChild )
 				divBlock.appendChild( contents[0].removeChild( contents[0].firstChild ) ) ;
@@ -269,5 +271,5 @@
 			var contentNode = contents[i] ;
 			while ( contentNode.parentNode )
-			{ 
+			{
 				if ( contentNode.parentNode == commonParent )
 				{
@@ -293,5 +295,5 @@
 				docFrag.appendChild( contentBlock.removeChild( contentBlock.firstChild ) ) ;
 			contentBlock.parentNode.removeChild( contentBlock ) ;
-			var listItem = doc.createElement( 'li' ) ; 
+			var listItem = doc.createElement( 'li' ) ;
 			listItem.appendChild( docFrag ) ;
 			listNode.appendChild( listItem ) ;
@@ -315,5 +317,5 @@
 			FCKDomTools.SetElementMarker( markerObj, itemNode, '_FCK_ListItem_Processed', true ) ;
 		}
-		
+
 		var lastListIndex = null ;
 		for ( var i = 0 ; i < selectedListItems.length ; i++ )
@@ -343,5 +345,5 @@
 
 		var newList = FCKDomTools.ArrayToList( listArray, markerObj ) ;
-		// If groupObj.root is the last element in its parent, or its nextSibling is a <br>, then we should 
+		// If groupObj.root is the last element in its parent, or its nextSibling is a <br>, then we should
 		// not add a <br> after the final item. So, check for the cases and trim the <br>.
 		if ( groupObj.root.nextSibling == null || groupObj.root.nextSibling.nodeName.IEquals( 'br' ) )
Index: /FCKeditor/trunk/editor/_source/commandclasses/fckremoveformatcommand.js
===================================================================
--- /FCKeditor/trunk/editor/_source/commandclasses/fckremoveformatcommand.js	(revision 917)
+++ /FCKeditor/trunk/editor/_source/commandclasses/fckremoveformatcommand.js	(revision 918)
@@ -23,17 +23,20 @@
  * Italic.
  */
- 
+
  var FCKRemoveFormatCommand = function()
  {
  	this.Name = 'RemoveFormat' ;
  }
- 
- FCKRemoveFormatCommand.prototype = 
+
+ FCKRemoveFormatCommand.prototype =
  {
 	Execute : function()
 	{
 		FCKStyles.RemoveAll() ;
+
+		FCK.Focus() ;
+		FCK.Events.FireEvent( 'OnSelectionChange' ) ;
 	},
-	
+
 	GetState : function()
 	{
Index: /FCKeditor/trunk/editor/_source/commandclasses/fckstylecommand.js
===================================================================
--- /FCKeditor/trunk/editor/_source/commandclasses/fckstylecommand.js	(revision 917)
+++ /FCKeditor/trunk/editor/_source/commandclasses/fckstylecommand.js	(revision 918)
@@ -41,5 +41,4 @@
 
 		FCK.Focus() ;
-
 		FCK.Events.FireEvent( 'OnSelectionChange' ) ;
 	},
Index: /FCKeditor/trunk/editor/_source/commandclasses/fcktextcolorcommand.js
===================================================================
--- /FCKeditor/trunk/editor/_source/commandclasses/fcktextcolorcommand.js	(revision 917)
+++ /FCKeditor/trunk/editor/_source/commandclasses/fcktextcolorcommand.js	(revision 918)
@@ -65,4 +65,7 @@
 		FCKStyles.ApplyStyle( style ) ;
 	}
+
+	FCK.Focus() ;
+	FCK.Events.FireEvent( 'OnSelectionChange' ) ;
 }
 
