Index: /FCKeditor/branches/versions/2.4.x/_dev/build_release.bat
===================================================================
--- /FCKeditor/branches/versions/2.4.x/_dev/build_release.bat	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/_dev/build_release.bat	(revision 221)
@@ -26,5 +26,5 @@
 
 :: Update this variable for each new release.
-SET RELEASER_VERSION=2.5 SVN
+SET RELEASER_VERSION=2.4.1
 
 CLS
Index: /FCKeditor/branches/versions/2.4.x/_whatsnew.html
===================================================================
--- /FCKeditor/branches/versions/2.4.x/_whatsnew.html	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/_whatsnew.html	(revision 221)
@@ -115,4 +115,10 @@
 		<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/165">#165</a>] The enter
 			key now honors the EnterMode settings when outdenting a list item.</li>
+		<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/190">#190</a>] Toolbars
+			may be wrongly positioned. Fixed.</li>
+		<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/254">#254</a>] The IgnoreEmptyParagraphValue
+			setting is now correctly handled in Firefox.</li>
+		<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/254">#248</a>] The behavior
+			of the backspace key has been fixed on some very specific cases.</li>
 	</ul>
 	<h3>
Index: /FCKeditor/branches/versions/2.4.x/editor/_source/classes/fckenterkey.js
===================================================================
--- /FCKeditor/branches/versions/2.4.x/editor/_source/classes/fckenterkey.js	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/editor/_source/classes/fckenterkey.js	(revision 221)
@@ -127,5 +127,4 @@
 		return false ;
 
-
 	var oStartBlock = oRange.StartBlock ;
 	var oEndBlock = oRange.EndBlock ;
@@ -203,9 +202,10 @@
 			return true ;
 		}
-		
+
 		// Take a reference to the parent for post processing cleanup.
 		var oCurrentParent = currentBlock.parentNode ;
 
-		if ( previous.nodeName.IEquals( 'TABLE', 'HR' ) )
+		var sPreviousName = previous.nodeName.toLowerCase() ;
+		if ( FCKListsLib.EmptyElements[ sPreviousName ] != null || sPreviousName == 'table' )
 		{
 			FCKDomTools.RemoveNode( previous ) ;
@@ -541,5 +541,5 @@
 
 // Recreate the elements tree at the end of the source block, at the beginning
-// of the target block. Eg.: 
+// of the target block. Eg.:
 //	If source = <p><u>Some</u> sample <b><i>text</i></b></p> then target = <p><b><i></i></b></p>
 //	If source = <p><u>Some</u> sample text</p> then target = <p></p>
@@ -556,5 +556,5 @@
 
 	FCKListHandler.OutdentListItem( li ) ;
-	
+
 	range.MoveToBookmark( oBookmark ) ;
 	range.Select() ;
Index: /FCKeditor/branches/versions/2.4.x/editor/_source/internals/fck.js
===================================================================
--- /FCKeditor/branches/versions/2.4.x/editor/_source/internals/fck.js	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/editor/_source/internals/fck.js	(revision 221)
@@ -89,5 +89,5 @@
 		this.EditingArea = new FCKEditingArea( document.getElementById( 'xEditingArea' ) ) ;
 		this.EditingArea.FFSpellChecker = false ;
-		
+
 		// Final setup of the lists lib.
 		FCKListsLib.Setup() ;
@@ -207,11 +207,19 @@
 
 		if ( FCKConfig.FullPage )
+		{
 			sXHTML = FCKXHtml.GetXHTML( oDoc.getElementsByTagName( 'html' )[0], true, format ) ;
+
+			if ( FCK.DocTypeDeclaration && FCK.DocTypeDeclaration.length > 0 )
+				sXHTML = FCK.DocTypeDeclaration + '\n' + sXHTML ;
+
+			if ( FCK.XmlDeclaration && FCK.XmlDeclaration.length > 0 )
+				sXHTML = FCK.XmlDeclaration + '\n' + sXHTML ;
+		}
 		else
 		{
-			if ( FCKConfig.IgnoreEmptyParagraphValue && oDoc.body.innerHTML == '<P>&nbsp;</P>' )
+			sXHTML = FCKXHtml.GetXHTML( oDoc.body, false, format ) ;
+
+			if ( FCKConfig.IgnoreEmptyParagraphValue && FCKRegexLib.EmptyOutParagraph.test( sXHTML ) )
 				sXHTML = '' ;
-			else
-				sXHTML = FCKXHtml.GetXHTML( oDoc.body, false, format ) ;
 		}
 
@@ -221,10 +229,4 @@
 		if ( FCKBrowserInfo.IsIE )
 			sXHTML = sXHTML.replace( FCKRegexLib.ToReplace, '$1' ) ;
-
-		if ( FCK.DocTypeDeclaration && FCK.DocTypeDeclaration.length > 0 )
-			sXHTML = FCK.DocTypeDeclaration + '\n' + sXHTML ;
-
-		if ( FCK.XmlDeclaration && FCK.XmlDeclaration.length > 0 )
-			sXHTML = FCK.XmlDeclaration + '\n' + sXHTML ;
 
 		return FCKConfig.ProtectedSource.Revert( sXHTML ) ;
@@ -288,20 +290,33 @@
 	ProtectTags : function( html )
 	{
-		// <meta> tags get executed, so if you have a redirect meta, the content
-		// will move to the target page.
-		var sTags = 'META' ;
-
-		if ( FCKConfig.ProtectedTags.length > 0 )
-			sTags += '|' + FCKConfig.ProtectedTags ;
+		var sTags = FCKConfig.ProtectedTags ;
 
 		// IE doesn't support <abbr> and it breaks it. Let's protect it.
 		if ( FCKBrowserInfo.IsIE )
-			sTags += '|ABBR|HR' ;
-
-		var oRegex = new RegExp( '<(' + sTags + ')(?!\w|:)', 'gi' ) ;
-		html = html.replace( oRegex, '<FCK:$1' ) ;
-
-		oRegex = new RegExp( '<\/(' + sTags + ')>', 'gi' ) ;
-		html = html.replace( oRegex, '<\/FCK:$1>' ) ;
+			sTags += sTags.length > 0 ? '|ABBR' : 'ABBR' ;
+		
+		var oRegex ;
+		if ( sTags.length > 0 )
+		{
+			oRegex = new RegExp( '<(' + sTags + ')(?!\w|:)', 'gi' ) ;
+			html = html.replace( oRegex, '<FCK:$1' ) ;
+
+			oRegex = new RegExp( '<\/(' + sTags + ')>', 'gi' ) ;
+			html = html.replace( oRegex, '<\/FCK:$1>' ) ;
+		}
+		
+		// Protect some empty elements. We must do it separately becase the
+		// original tag may not contain the closing slash, like <hr>:
+		//		- <meta> tags get executed, so if you have a redirect meta, the
+		//		  content will move to the target page.
+		//		- <hr> may destroy the document structure if not well
+		//		  positioned. The trick is protect it here and restore them in
+		//		  the FCKDocumentProcessor.
+		sTags = 'META' ;
+		if ( FCKBrowserInfo.IsIE )
+			sTags += '|HR' ;
+
+		oRegex = new RegExp( '<((' + sTags + ')(?=\s|>)[\s\S]*?)/?>', 'gi' ) ;
+		html = html.replace( oRegex, '<FCK:$1 />' ) ;
 
 		return html ;
@@ -315,8 +330,8 @@
 		{
 			html = FCKConfig.ProtectedSource.Protect( html ) ;
-			
+
 			// Fix for invalid self-closing tags (see #152).
 			html = html.replace( FCKRegexLib.InvalidSelfCloseTags, '$1></$2>' ) ;
-			
+
 			html = FCK.ProtectEvents( html ) ;
 			html = FCK.ProtectUrls( html ) ;
@@ -332,5 +347,5 @@
 				html = html.replace( FCKRegexLib.EmCloser, '<\/i>' ) ;
 			}
-			
+
 			this._ForceResetIsDirty = ( resetIsDirty === true ) ;
 
@@ -430,5 +445,5 @@
 			// Removes the enter key handler.
 			FCK.EnterKeyHandler = null ;
-			
+
 			if ( resetIsDirty )
 				this.ResetIsDirty() ;
@@ -570,5 +585,5 @@
 
 		FCK.SetHTML( sHtml, !bIsDirty ) ;
-		
+
 		// Set the Focus.
 		FCK.Focus() ;
@@ -644,8 +659,8 @@
 	// Listen for keystroke events.
 	FCK.KeystrokeHandler.AttachToElement( FCK.EditorDocument ) ;
-	
+
 	if ( FCK._ForceResetIsDirty )
 		FCK.ResetIsDirty() ;
-	
+
 	// This is a tricky thing for IE. In some cases, even if the cursor is
 	// blinking in the editing, the keystroke handler doesn't catch keyboard
Index: /FCKeditor/branches/versions/2.4.x/editor/_source/internals/fckdomtools.js
===================================================================
--- /FCKeditor/branches/versions/2.4.x/editor/_source/internals/fckdomtools.js	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/editor/_source/internals/fckdomtools.js	(revision 221)
@@ -159,5 +159,19 @@
 	},
 
-	// Get the previous element in the source order.
+	/*
+	 * Gets the previous element (nodeType=1) in the source order. Returns
+	 * "null" If no element is found.
+	 *		@param {Object} currentNode The node to start searching from.
+	 *		@param {Boolean} ignoreSpaceTextOnly Sets how text nodes will be
+	 *				handled. If set to "true", only white spaces text nodes
+	 *				will be ignored, while non white space text nodes will stop
+	 *				the search, returning null. If "false" or ommitted, all
+	 *				text nodes are ignored.
+	 *		@param {string[]} stopSearchElements An array of element names that
+	 *				will cause the search to stop when found, returning null.
+	 *				May be ommitted (or null).
+	 *		@param {string[]} ignoreElements An array of element names that
+	 *				must be ignored during the search.
+	 */
 	GetPreviousSourceElement : function( currentNode, ignoreSpaceTextOnly, stopSearchElements, ignoreElements )
 	{
@@ -195,5 +209,19 @@
 	},
 
-	// Get the previous element in the source order.
+	/*
+	 * Gets the next element (nodeType=1) in the source order. Returns
+	 * "null" If no element is found.
+	 *		@param {Object} currentNode The node to start searching from.
+	 *		@param {Boolean} ignoreSpaceTextOnly Sets how text nodes will be
+	 *				handled. If set to "true", only white spaces text nodes
+	 *				will be ignored, while non white space text nodes will stop
+	 *				the search, returning null. If "false" or ommitted, all
+	 *				text nodes are ignored.
+	 *		@param {string[]} stopSearchElements An array of element names that
+	 *				will cause the search to stop when found, returning null.
+	 *				May be ommitted (or null).
+	 *		@param {string[]} ignoreElements An array of element names that
+	 *				must be ignored during the search.
+	 */
 	GetNextSourceElement : function( currentNode, ignoreSpaceTextOnly, stopSearchElements, ignoreElements )
 	{
Index: /FCKeditor/branches/versions/2.4.x/editor/_source/internals/fckregexlib.js
===================================================================
--- /FCKeditor/branches/versions/2.4.x/editor/_source/internals/fckregexlib.js	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/editor/_source/internals/fckregexlib.js	(revision 221)
@@ -60,5 +60,7 @@
 
 // Empty elements may be <p></p> or even a simple opening <p> (see #211).
-EmptyParagraph	: /^<([^ >]+)[^>]*>\s*(<\/\1>)?$/i ,
+EmptyParagraph	: /^<([^ >]+)[^>]*>\s*(<\/\1>)?$/ ,
+
+EmptyOutParagraph : /^<([^ >]+)[^>]*>(?:\s*|&nbsp;)(<\/\1>)?$/ ,
 
 TagBody			: /></ ,
Index: /FCKeditor/branches/versions/2.4.x/editor/filemanager/browser/default/browser.html
===================================================================
--- /FCKeditor/branches/versions/2.4.x/editor/filemanager/browser/default/browser.html	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/editor/filemanager/browser/default/browser.html	(revision 221)
@@ -119,5 +119,5 @@
 oIcons.AvailableIconsArray = [
 	'ai','avi','bmp','cs','dll','doc','exe','fla','gif','htm','html','jpg','js',
-	'mdb','mp3','pdf','ppt','rdp','swf','swt','txt','vsd','xls','xml','zip' ] ;
+	'mdb','mp3','pdf','png','ppt','rdp','swf','swt','txt','vsd','xls','xml','zip' ] ;
 
 oIcons.AvailableIcons = new Object() ;
Index: /FCKeditor/branches/versions/2.4.x/editor/lang/_translationstatus.txt
===================================================================
--- /FCKeditor/branches/versions/2.4.x/editor/lang/_translationstatus.txt	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/editor/lang/_translationstatus.txt	(revision 221)
@@ -32,7 +32,7 @@
 de.js      Found: 401   Missing: 1
 el.js      Found: 401   Missing: 1
-en-au.js   Found: 401   Missing: 1
-en-ca.js   Found: 401   Missing: 1
-en-uk.js   Found: 401   Missing: 1
+en-au.js   Found: 402   Missing: 0
+en-ca.js   Found: 402   Missing: 0
+en-uk.js   Found: 402   Missing: 0
 eo.js      Found: 350   Missing: 52
 es.js      Found: 386   Missing: 16
@@ -56,7 +56,7 @@
 mn.js      Found: 230   Missing: 172
 ms.js      Found: 356   Missing: 46
-nb.js      Found: 401   Missing: 1
+nb.js      Found: 400   Missing: 2
 nl.js      Found: 401   Missing: 1
-no.js      Found: 401   Missing: 1
+no.js      Found: 400   Missing: 2
 pl.js      Found: 386   Missing: 16
 pt-br.js   Found: 401   Missing: 1
@@ -69,5 +69,5 @@
 sr.js      Found: 373   Missing: 29
 sv.js      Found: 381   Missing: 21
-th.js      Found: 350   Missing: 52
+th.js      Found: 398   Missing: 4
 tr.js      Found: 401   Missing: 1
 uk.js      Found: 401   Missing: 1
Index: /FCKeditor/branches/versions/2.4.x/editor/lang/en-au.js
===================================================================
--- /FCKeditor/branches/versions/2.4.x/editor/lang/en-au.js	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/editor/lang/en-au.js	(revision 221)
@@ -345,5 +345,5 @@
 
 DlgPasteMsg2	: "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.",
-DlgPasteSec		: "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.",	//MISSING
+DlgPasteSec		: "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.",
 DlgPasteIgnoreFont		: "Ignore Font Face definitions",
 DlgPasteRemoveStyles	: "Remove Styles definitions",
Index: /FCKeditor/branches/versions/2.4.x/editor/lang/en-ca.js
===================================================================
--- /FCKeditor/branches/versions/2.4.x/editor/lang/en-ca.js	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/editor/lang/en-ca.js	(revision 221)
@@ -345,5 +345,5 @@
 
 DlgPasteMsg2	: "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.",
-DlgPasteSec		: "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.",	//MISSING
+DlgPasteSec		: "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.",
 DlgPasteIgnoreFont		: "Ignore Font Face definitions",
 DlgPasteRemoveStyles	: "Remove Styles definitions",
Index: /FCKeditor/branches/versions/2.4.x/editor/lang/en-uk.js
===================================================================
--- /FCKeditor/branches/versions/2.4.x/editor/lang/en-uk.js	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/editor/lang/en-uk.js	(revision 221)
@@ -345,5 +345,5 @@
 
 DlgPasteMsg2	: "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.",
-DlgPasteSec		: "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.",	//MISSING
+DlgPasteSec		: "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.",
 DlgPasteIgnoreFont		: "Ignore Font Face definitions",
 DlgPasteRemoveStyles	: "Remove Styles definitions",
Index: /FCKeditor/branches/versions/2.4.x/editor/lang/nb.js
===================================================================
--- /FCKeditor/branches/versions/2.4.x/editor/lang/nb.js	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/editor/lang/nb.js	(revision 221)
@@ -501,4 +501,4 @@
 DlgAboutLicenseTab	: "Lisens",
 DlgAboutVersion		: "versjon",
-DlgAboutInfo		: "Oversatt av Siteman AS<br /><a target=\"_blank\" href=\"http://www.siteman.no\">www.siteman.no</a><br /><br />For mer informasjon gå til"
+DlgAboutInfo		: "For further information go to"	//MISSING
 };
Index: /FCKeditor/branches/versions/2.4.x/editor/lang/no.js
===================================================================
--- /FCKeditor/branches/versions/2.4.x/editor/lang/no.js	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/editor/lang/no.js	(revision 221)
@@ -501,4 +501,4 @@
 DlgAboutLicenseTab	: "Lisens",
 DlgAboutVersion		: "versjon",
-DlgAboutInfo		: "Oversatt av Siteman AS<br /><a target=\"_blank\" href=\"http://www.siteman.no\">www.siteman.no</a><br /><br />For mer informasjon gå til"
+DlgAboutInfo		: "For further information go to"	//MISSING
 };
Index: /FCKeditor/branches/versions/2.4.x/editor/lang/th.js
===================================================================
--- /FCKeditor/branches/versions/2.4.x/editor/lang/th.js	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/editor/lang/th.js	(revision 221)
@@ -48,6 +48,6 @@
 InsertImageLbl		: "รูปภาพ",
 InsertImage			: "แทรก/แก้ไข รูปภาพ",
-InsertFlashLbl		: "Flash",	//MISSING
-InsertFlash			: "Insert/Edit Flash",	//MISSING
+InsertFlashLbl		: "ไฟล์ Flash",
+InsertFlash			: "แทรก/แก้ไข ไฟล์ Flash",
 InsertTableLbl		: "ตาราง",
 InsertTable			: "แทรก/แก้ไข ตาราง",
@@ -90,6 +90,6 @@
 SpellCheck			: "ตรวจการสะกดคำ",
 UniversalKeyboard	: "คีย์บอร์ดหลากภาษา",
-PageBreakLbl		: "Page Break",	//MISSING
-PageBreak			: "Insert Page Break",	//MISSING
+PageBreakLbl		: "ใส่ตัวแบ่งหน้า Page Break",
+PageBreak			: "แทรกตัวแบ่งหน้า Page Break",
 
 Form			: "แบบฟอร์ม",
@@ -103,11 +103,11 @@
 ImageButton		: "ปุ่มแบบรูปภาพ",
 
-FitWindow		: "Maximize the editor size",	//MISSING
+FitWindow		: "ขยายขนาดตัวอีดิตเตอร์",
 
 // Context Menu
 EditLink			: "แก้ไข ลิงค์",
-CellCM				: "Cell",	//MISSING
-RowCM				: "Row",	//MISSING
-ColumnCM			: "Column",	//MISSING
+CellCM				: "ช่องตาราง",
+RowCM				: "แถว",
+ColumnCM			: "คอลัมน์",
 InsertRow			: "แทรกแถว",
 DeleteRows			: "ลบแถว",
@@ -118,9 +118,9 @@
 MergeCells			: "ผสานช่อง",
 SplitCell			: "แยกช่อง",
-TableDelete			: "Delete Table",	//MISSING
+TableDelete			: "ลบตาราง",
 CellProperties		: "คุณสมบัติของช่อง",
 TableProperties		: "คุณสมบัติของตาราง",
 ImageProperties		: "คุณสมบัติของรูปภาพ",
-FlashProperties		: "Flash Properties",	//MISSING
+FlashProperties		: "คุณสมบัติของไฟล์ Flash",
 
 AnchorProp			: "รายละเอียด Anchor",
@@ -146,7 +146,7 @@
 NotImplemented		: "ไม่สามารถใช้งานคำสั่งได้",
 UnknownToolbarSet	: "ไม่มีการติดตั้งชุดคำสั่งในแถบเครื่องมือ \"%1\" กรุณาติดต่อผู้ดูแลระบบ",
-NoActiveX			: "Your browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.",	//MISSING
-BrowseServerBlocked : "The resources browser could not be opened. Make sure that all popup blockers are disabled.",	//MISSING
-DialogBlocked		: "It was not possible to open the dialog window. Make sure all popup blockers are disabled.",	//MISSING
+NoActiveX			: "โปรแกรมท่องอินเตอร์เน็ตของท่านไม่อนุญาติให้อีดิตเตอร์ทำงาน \"Run ActiveX controls and plug-ins\". หากไม่อนุญาติให้ใช้งาน ActiveX controls ท่านจะไม่สามารถใช้งานได้อย่างเต็มประสิทธิภาพ.",
+BrowseServerBlocked : "เปิดหน้าต่างป๊อบอัพเพื่อทำงานต่อไม่ได้ กรุณาปิดเครื่องมือป้องกันป๊อบอัพในโปรแกรมท่องอินเตอร์เน็ตของท่านด้วย",
+DialogBlocked		: "เปิดหน้าต่างป๊อบอัพเพื่อทำงานต่อไม่ได้ กรุณาปิดเครื่องมือป้องกันป๊อบอัพในโปรแกรมท่องอินเตอร์เน็ตของท่านด้วย",
 
 // Dialogs
@@ -157,6 +157,6 @@
 DlgAdvancedTag		: "ขั้นสูง",
 DlgOpOther			: "<อื่นๆ>",
-DlgInfoTab			: "Info",	//MISSING
-DlgAlertUrl			: "Please insert the URL",	//MISSING
+DlgInfoTab			: "อินโฟ",
+DlgAlertUrl			: "กรุณาระบุ URL",
 
 // General Dialogs Labels
@@ -203,15 +203,15 @@
 DlgImgPreview		: "หน้าเอกสารตัวอย่าง",
 DlgImgAlertUrl		: "กรุณาระบุที่อยู่อ้างอิงออนไลน์ของไฟล์รูปภาพ (URL)",
-DlgImgLinkTab		: "Link",	//MISSING
+DlgImgLinkTab		: "ลิ้งค์",
 
 // Flash Dialog
-DlgFlashTitle		: "Flash Properties",	//MISSING
-DlgFlashChkPlay		: "Auto Play",	//MISSING
-DlgFlashChkLoop		: "Loop",	//MISSING
-DlgFlashChkMenu		: "Enable Flash Menu",	//MISSING
-DlgFlashScale		: "Scale",	//MISSING
-DlgFlashScaleAll	: "Show all",	//MISSING
-DlgFlashScaleNoBorder	: "No Border",	//MISSING
-DlgFlashScaleFit	: "Exact Fit",	//MISSING
+DlgFlashTitle		: "คุณสมบัติของไฟล์ Flash",
+DlgFlashChkPlay		: "เล่นอัตโนมัติ Auto Play",
+DlgFlashChkLoop		: "เล่นวนรอบ Loop",
+DlgFlashChkMenu		: "ให้ใช้งานเมนูของ Flash",
+DlgFlashScale		: "อัตราส่วน Scale",
+DlgFlashScaleAll	: "แสดงให้เห็นทั้งหมด Show all",
+DlgFlashScaleNoBorder	: "ไม่แสดงเส้นขอบ No Border",
+DlgFlashScaleFit	: "แสดงให้พอดีกับพื้นที่ Exact Fit",
 
 // Link Dialog
@@ -230,5 +230,5 @@
 DlgLnkAnchorByName	: "ชื่อ",
 DlgLnkAnchorById	: "ไอดี",
-DlgLnkNoAnchors		: "<ยังไม่มีจุดเชื่อมโยงภายในหน้าเอกสารนี้>",		//REVIEW : Change < and > with ( and )
+DlgLnkNoAnchors		: "(ยังไม่มีจุดเชื่อมโยงภายในหน้าเอกสารนี้)",		//REVIEW : Change < and > with ( and )
 DlgLnkEMail			: "อีเมล์ (E-Mail)",
 DlgLnkEMailSubject	: "หัวเรื่อง",
@@ -263,5 +263,5 @@
 DlnLnkMsgNoEMail	: "กรุณาระบุอีเมล์ (E-mail)",
 DlnLnkMsgNoAnchor	: "กรุณาระบุจุดเชื่อมโยง (Anchor)",
-DlnLnkMsgInvPopName	: "The popup name must begin with an alphabetic character and must not contain spaces",	//MISSING
+DlnLnkMsgInvPopName	: "ชื่อของหน้าต่างป๊อบอัพ จะต้องขึ้นต้นด้วยตัวอักษรเท่านั้น และต้องไม่มีช่องว่างในชื่อ",
 
 // Color Dialog
@@ -272,5 +272,5 @@
 
 // Smiley Dialog
-DlgSmileyTitle		: "แทรกสัญักษณ์สื่ออารมณ์",
+DlgSmileyTitle		: "แทรกสัญลักษณ์สื่ออารมณ์",
 
 // Special Character Dialog
@@ -294,5 +294,5 @@
 DlgTableCellPad		: "ระยะแนวตั้ง",
 DlgTableCaption		: "หัวเรื่องของตาราง",
-DlgTableSummary		: "Summary",	//MISSING
+DlgTableSummary		: "สรุปความ",
 
 // Table Cell Dialog
@@ -344,9 +344,9 @@
 PasteFromWord	: "วางแบบตัวอักษรจากโปรแกรมเวิร์ด",
 
-DlgPasteMsg2	: "Please paste inside the following box using the keyboard (<strong>Ctrl+V</strong>) and hit <strong>OK</strong>.",	//MISSING
+DlgPasteMsg2	: "กรุณาใช้คีย์บอร์ดเท่านั้น โดยกดปุ๋ม (<strong>Ctrl และ V</strong>)พร้อมๆกัน และกด <strong>OK</strong>.",
 DlgPasteSec		: "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.",	//MISSING
-DlgPasteIgnoreFont		: "Ignore Font Face definitions",	//MISSING
-DlgPasteRemoveStyles	: "Remove Styles definitions",	//MISSING
-DlgPasteCleanBox		: "Clean Up Box",	//MISSING
+DlgPasteIgnoreFont		: "ไม่สนใจ Font Face definitions",
+DlgPasteRemoveStyles	: "ลบ Styles definitions",
+DlgPasteCleanBox		: "ล้างข้อมูลใน Box",
 
 // Color Picker
@@ -382,7 +382,7 @@
 DlgButtonText		: "ข้อความ (ค่าตัวแปร)",
 DlgButtonType		: "ข้อความ",
-DlgButtonTypeBtn	: "Button",	//MISSING
-DlgButtonTypeSbm	: "Submit",	//MISSING
-DlgButtonTypeRst	: "Reset",	//MISSING
+DlgButtonTypeBtn	: "Button",
+DlgButtonTypeSbm	: "Submit",
+DlgButtonTypeRst	: "Reset",
 
 // Checkbox and Radio Button Dialogs
@@ -456,13 +456,13 @@
 DlgDocLangCode		: "รหัสภาษา",
 DlgDocCharSet		: "ชุดตัวอักษร",
-DlgDocCharSetCE		: "Central European",	//MISSING
-DlgDocCharSetCT		: "Chinese Traditional (Big5)",	//MISSING
-DlgDocCharSetCR		: "Cyrillic",	//MISSING
-DlgDocCharSetGR		: "Greek",	//MISSING
-DlgDocCharSetJP		: "Japanese",	//MISSING
-DlgDocCharSetKR		: "Korean",	//MISSING
-DlgDocCharSetTR		: "Turkish",	//MISSING
-DlgDocCharSetUN		: "Unicode (UTF-8)",	//MISSING
-DlgDocCharSetWE		: "Western European",	//MISSING
+DlgDocCharSetCE		: "Central European",
+DlgDocCharSetCT		: "Chinese Traditional (Big5)",
+DlgDocCharSetCR		: "Cyrillic",
+DlgDocCharSetGR		: "Greek",
+DlgDocCharSetJP		: "Japanese",
+DlgDocCharSetKR		: "Korean",
+DlgDocCharSetTR		: "Turkish",
+DlgDocCharSetUN		: "Unicode (UTF-8)",
+DlgDocCharSetWE		: "Western European",
 DlgDocCharSetOther	: "ชุดตัวอักษรอื่นๆ",
 
@@ -489,16 +489,16 @@
 
 // Templates Dialog
-Templates			: "Templates",	//MISSING
-DlgTemplatesTitle	: "Content Templates",	//MISSING
-DlgTemplatesSelMsg	: "Please select the template to open in the editor<br />(the actual contents will be lost):",	//MISSING
-DlgTemplatesLoading	: "Loading templates list. Please wait...",	//MISSING
-DlgTemplatesNoTpl	: "(No templates defined)",	//MISSING
-DlgTemplatesReplace	: "Replace actual contents",	//MISSING
+Templates			: "เทมเพลต",
+DlgTemplatesTitle	: "เทมเพลตของส่วนเนื้อหาเว็บไซต์",
+DlgTemplatesSelMsg	: "กรุณาเลือก เทมเพลต เพื่อนำไปแก้ไขในอีดิตเตอร์<br />(เนื้อหาส่วนนี้จะหายไป):",
+DlgTemplatesLoading	: "กำลังโหลดรายการเทมเพลตทั้งหมด...",
+DlgTemplatesNoTpl	: "(ยังไม่มีการกำหนดเทมเพลต)",
+DlgTemplatesReplace	: "แทนที่เนื้อหาเว็บไซต์ที่เลือก",
 
 // About Dialog
 DlgAboutAboutTab	: "เกี่ยวกับโปรแกรม",
 DlgAboutBrowserInfoTab	: "โปรแกรมท่องเว็บที่ท่านใช้",
-DlgAboutLicenseTab	: "License",	//MISSING
+DlgAboutLicenseTab	: "ลิขสิทธิ์",
 DlgAboutVersion		: "รุ่น",
-DlgAboutInfo		: "ข้อมูลเพิ่มเติมภาษาไทยติดต่อ</BR>นาย ชรินทร์ อาษากิจ (อู้ด)</BR><A HREF='mailto:arsakit@gmail.com'>arsakit@gmail.com</A> tel. (+66) 06-9241924</BR>หรือดาวน์โหลดรุ่นภาษาไทยได้ที่เว็บไซต์</BR><A HREF='http://www.thaimall4u.com'>www.Thaimall4u.com</A></BR>ข้อมูลเพิ่มเติมภาษาอังกฤษ กรุณาไปที่นี่"
+DlgAboutInfo		: "For further information go to"	//MISSING
 };
Index: /FCKeditor/branches/versions/2.4.x/editor/skins/default/fck_editor.css
===================================================================
--- /FCKeditor/branches/versions/2.4.x/editor/skins/default/fck_editor.css	(revision 220)
+++ /FCKeditor/branches/versions/2.4.x/editor/skins/default/fck_editor.css	(revision 221)
@@ -68,4 +68,5 @@
 .TB_Toolbar
 {
+	height: 24px;
     display: inline-table;	/* inline = Opera jumping buttons bug */
 }
