Index: /FCKeditor/branches/features/floating_dialog/editor/_source/internals/fckcommands.js
===================================================================
--- /FCKeditor/branches/features/floating_dialog/editor/_source/internals/fckcommands.js	(revision 1325)
+++ /FCKeditor/branches/features/floating_dialog/editor/_source/internals/fckcommands.js	(revision 1326)
@@ -64,5 +64,5 @@
 		case 'Flash'		: oCommand = new FCKDialogCommand( 'Flash'		, FCKLang.DlgFlashTitle			, 'dialog/fck_flash.html'		, 450, 390 ) ; break ;
 		case 'SpecialChar'	: oCommand = new FCKDialogCommand( 'SpecialChar', FCKLang.DlgSpecialCharTitle	, 'dialog/fck_specialchar.html'	, 400, 290 ) ; break ;
-		case 'Smiley'		: oCommand = new FCKDialogCommand( 'Smiley'		, FCKLang.DlgSmileyTitle		, 'dialog/fck_smiley.html'		, FCKConfig.SmileyWindowWidth, FCKConfig.SmileyWindowHeight ) ; break ;
+		case 'Smiley'		: oCommand = new FCKDialogCommand( 'Smiley'		, FCKLang.DlgSmileyTitle		, 'dialog/fck_smiley.php'		, FCKConfig.SmileyWindowWidth, FCKConfig.SmileyWindowHeight ) ; break ;
 		case 'Table'		: oCommand = new FCKDialogCommand( 'Table'		, FCKLang.DlgTableTitle			, 'dialog/fck_table.html'		, 480, 250 ) ; break ;
 		case 'TableProp'	: oCommand = new FCKDialogCommand( 'Table'		, FCKLang.DlgTableTitle			, 'dialog/fck_table.html?Parent', 480, 250 ) ; break ;
Index: /FCKeditor/branches/features/floating_dialog/editor/dialog/fck_colorselector.html
===================================================================
--- /FCKeditor/branches/features/floating_dialog/editor/dialog/fck_colorselector.html	(revision 1325)
+++ /FCKeditor/branches/features/floating_dialog/editor/dialog/fck_colorselector.html	(revision 1326)
@@ -137,6 +137,6 @@
 function Ok()
 {
-	if ( typeof(window.parent.args.CustomValue) == 'function' )
-		window.parent.args.CustomValue( document.getElementById('selcolor').value ) ;
+	if ( typeof(window.parent.Args().CustomValue) == 'function' )
+		window.parent.Args().CustomValue( document.getElementById('selcolor').value ) ;
 
 	return true ;
Index: /FCKeditor/branches/features/floating_dialog/editor/fckdialog.html
===================================================================
--- /FCKeditor/branches/features/floating_dialog/editor/fckdialog.html	(revision 1325)
+++ /FCKeditor/branches/features/floating_dialog/editor/fckdialog.html	(revision 1326)
@@ -102,8 +102,5 @@
 }
 
-function $( id )
-{
-	return document.getElementById( id ) ;
-}
+FCKTools.RegisterDollarFunction( window ) ;
 
 // Resize related functions.
@@ -138,23 +135,4 @@
 		},
 
-		// Fit the dialog container's layout to the inner iframe's external size.
-		RefreshContainerSize : function()
-		{
-			var frmMain = $( 'frmMain' ) ;
-			
-			if ( frmMain )
-			{
-				// Get the container size.
-				var height = $( 'contents' ).offsetHeight ;
-				
-				// Subtract the size of other elements.
-				height -= $( 'TitleArea' ).offsetHeight ;
-				height -= $( 'TabsRow' ).offsetHeight ;
-				height -= $( 'DialogButtons' ).offsetHeight ;
-				
-				frmMain.style.height = Math.max( height, 0 ) + 'px' ;
-			}
-		},
-
 		// Resize and re-layout the dialog.
 		// Triggers the onresize event for the layout logic.
@@ -207,8 +185,10 @@
 	}
 
-	// Safari seems to have a bug with the time when RefreshSize() is executed - it
-	// thinks frmMain's innerHeight is 0 if we query the value too soon after the
-	// page is loaded in some circumstances. (#1316)
-	// TODO : Maybe this is not needed anymore after #35.
+	/** 
+	 * Safari seems to have a bug with the time when RefreshSize() is executed - it
+	 * thinks frmMain's innerHeight is 0 if we query the value too soon after the
+	 * page is loaded in some circumstances. (#1316)
+	 * TODO : Maybe this is not needed anymore after #35.
+	 */
 	if ( FCKBrowserInfo.IsSafari )
 	{
@@ -233,4 +213,22 @@
 {
 	var timer = null ;
+	var baseIndex = 0 ;
+	var updateThrobber = function()
+	{
+		var throbberParent = $( 'throbberBlock' ) ;
+		var throbberBlocks = throbberParent.childNodes ;
+		for ( var i = 0 ; i < throbberBlocks.length ; i++ )
+		{
+			var classes = throbberBlocks[i].className.split( ' ' ) ;
+			classes.pop() ;
+			classes.push( 'throbber_' + ( baseIndex + i ) % 10 ) ;
+			throbberBlocks[i].className = classes.join( ' ' ) ;
+		}
+		baseIndex-- ;
+		if ( baseIndex < 0 )
+			baseIndex += 10 ;
+		timer = FCKTools.SetTimeout( arguments.callee, 100, this, null, window ) ;
+	}
+
 	FCKTools.AddEventListener( window, 'beforeunload', function()
 		{
@@ -249,5 +247,8 @@
 
 			var throbberParent = $( 'throbberBlock' ) ;
-			throbberParent.innerHTML = '<img src="%%images/loading.gif" width="28" height="28" border="0" />'.replace( '%%', FCKConfig.SkinPath ) ; ;
+			for ( var i = 0 ; i < 10 ; i++)
+				throbberParent.appendChild( document.createElement( 'div' ) ).className = 'throbber_' + ( i > 0 ? 'right' : 'left' ) 
+					+ ' throbber_' + i ;
+			baseIndex = 9 ;
 
 			var frm = $( 'contents' ) ;
@@ -258,5 +259,5 @@
 			throbberParent.style.top = parseInt( y, 10 ) + 'px' ;
 
-			timer = null ;
+			timer = FCKTools.SetTimeout( updateThrobber, 100, this, null, window ) ;
 		},
 
@@ -264,5 +265,8 @@
 		{
 			if ( timer )
+			{
 				clearTimeout( timer ) ;
+				timer = null ;
+			}
 
 			var throbberParent = document.getElementById( 'throbberBlock' ) ;
Index: /FCKeditor/branches/features/floating_dialog/editor/skins/default/fck_dialog.css
===================================================================
--- /FCKeditor/branches/features/floating_dialog/editor/skins/default/fck_dialog.css	(revision 1325)
+++ /FCKeditor/branches/features/floating_dialog/editor/skins/default/fck_dialog.css	(revision 1326)
@@ -359,2 +359,64 @@
 }
 
+.throbber_left, .throbber_right
+{
+	position: relative;
+	width: 8px;
+	height: 10px;
+	float: left;
+}
+
+.throbber_right
+{
+	margin-left: 3px;
+}
+
+.throbber_0
+{
+	background-color: #555;
+}
+
+.throbber_1
+{
+	background-color: #666;
+}
+
+.throbber_2
+{
+	background-color: #777;
+}
+
+.throbber_3
+{
+	background-color: #888;
+}
+
+.throbber_4
+{
+	background-color: #999;
+}
+
+.throbber_5
+{
+	background-color: #AAA;
+}
+
+.throbber_6
+{
+	background-color: #999;
+}
+
+.throbber_7
+{
+	background-color: #888;
+}
+
+.throbber_8
+{
+	background-color: #777;
+}
+
+.throbber_9
+{
+	background-color: #666;
+}
Index: /FCKeditor/branches/features/floating_dialog/editor/skins/office2003/fck_dialog.css
===================================================================
--- /FCKeditor/branches/features/floating_dialog/editor/skins/office2003/fck_dialog.css	(revision 1325)
+++ /FCKeditor/branches/features/floating_dialog/editor/skins/office2003/fck_dialog.css	(revision 1326)
@@ -351,2 +351,64 @@
 }
 
+.throbber_left, .throbber_right
+{
+	position: relative;
+	width: 8px;
+	height: 10px;
+	float: left;
+}
+
+.throbber_right
+{
+	margin-left: 3px;
+}
+
+.throbber_0
+{
+	background-color: #555;
+}
+
+.throbber_1
+{
+	background-color: #666;
+}
+
+.throbber_2
+{
+	background-color: #777;
+}
+
+.throbber_3
+{
+	background-color: #888;
+}
+
+.throbber_4
+{
+	background-color: #999;
+}
+
+.throbber_5
+{
+	background-color: #AAA;
+}
+
+.throbber_6
+{
+	background-color: #999;
+}
+
+.throbber_7
+{
+	background-color: #888;
+}
+
+.throbber_8
+{
+	background-color: #777;
+}
+
+.throbber_9
+{
+	background-color: #666;
+}
Index: /FCKeditor/branches/features/floating_dialog/editor/skins/silver/fck_dialog.css
===================================================================
--- /FCKeditor/branches/features/floating_dialog/editor/skins/silver/fck_dialog.css	(revision 1325)
+++ /FCKeditor/branches/features/floating_dialog/editor/skins/silver/fck_dialog.css	(revision 1326)
@@ -351,2 +351,64 @@
 }
 
+.throbber_left, .throbber_right
+{
+	position: relative;
+	width: 8px;
+	height: 10px;
+	float: left;
+}
+
+.throbber_right
+{
+	margin-left: 3px;
+}
+
+.throbber_0
+{
+	background-color: #555;
+}
+
+.throbber_1
+{
+	background-color: #666;
+}
+
+.throbber_2
+{
+	background-color: #777;
+}
+
+.throbber_3
+{
+	background-color: #888;
+}
+
+.throbber_4
+{
+	background-color: #999;
+}
+
+.throbber_5
+{
+	background-color: #AAA;
+}
+
+.throbber_6
+{
+	background-color: #999;
+}
+
+.throbber_7
+{
+	background-color: #888;
+}
+
+.throbber_8
+{
+	background-color: #777;
+}
+
+.throbber_9
+{
+	background-color: #666;
+}
