Index: /FCKeditor/branches/versions/2.6.x/_dev/build_release.bat
===================================================================
--- /FCKeditor/branches/versions/2.6.x/_dev/build_release.bat	(revision 3035)
+++ /FCKeditor/branches/versions/2.6.x/_dev/build_release.bat	(revision 3036)
@@ -1,3 +1,3 @@
-﻿@ECHO OFF
+@ECHO OFF
 
 ::
@@ -26,5 +26,5 @@
 
 :: Update this variable for each new release.
-SET RELEASER_VERSION=2.6.4 Beta
+SET RELEASER_VERSION=2.6.4
 
 CLS
Index: /FCKeditor/branches/versions/2.6.x/_whatsnew.html
===================================================================
--- /FCKeditor/branches/versions/2.6.x/_whatsnew.html	(revision 3035)
+++ /FCKeditor/branches/versions/2.6.x/_whatsnew.html	(revision 3036)
@@ -33,4 +33,26 @@
 	<h1>
 		FCKeditor ChangeLog - What's New?</h1>
+	<h3>
+		Version 2.6.4</h3>
+	<p>
+		Fixed Bugs:</p>
+	<ul>
+		<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2777">#2777</a>] Merging
+			cells between table header and body is no longer possible.</li>
+		<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2815">#2815</a>] Fixed
+			WSC issues at slow connection speed. Added SSL support.</li>
+		<li>Language file updates for the following languages:
+			<ul>
+				<li>Chinese (Traditional)</li>
+				<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2846">#2846</a>] French</li>
+				<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2801">#2801</a>] Hebrew</li>
+				<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2824">#2824</a>] Russian</li>
+				<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2811">#2811</a>] Turkish</li>
+			</ul>
+		</li>
+		<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2757">#2757</a>] Fixed
+			a minor bug which causes selection positions to be improperly restored during undos
+			and redos.</li>
+	</ul>
 	<h3>
 		Version 2.6.4 Beta</h3>
Index: /FCKeditor/branches/versions/2.6.x/editor/_source/classes/fckdomrange.js
===================================================================
--- /FCKeditor/branches/versions/2.6.x/editor/_source/classes/fckdomrange.js	(revision 3035)
+++ /FCKeditor/branches/versions/2.6.x/editor/_source/classes/fckdomrange.js	(revision 3036)
@@ -471,5 +471,5 @@
 		var addrStart = this._Range.startContainer ;
 		var addrEnd = this._Range.endContainer ;
-		while ( curStart && addrStart.nodeType == 3 )
+		while ( curStart && curStart.nodeType == 3 && addrStart.nodeType == 3 )
 		{
 			bookmark.Start[0] += curStart.length ;
@@ -477,5 +477,5 @@
 			curStart = curStart.previousSibling ;
 		}
-		while ( curEnd && addrEnd.nodeType == 3 )
+		while ( curEnd && curEnd.nodeType == 3 && addrEnd.nodeType == 3 )
 		{
 			bookmark.End[0] += curEnd.length ;
Index: /FCKeditor/branches/versions/2.6.x/editor/_source/internals/fcktablehandler.js
===================================================================
--- /FCKeditor/branches/versions/2.6.x/editor/_source/internals/fcktablehandler.js	(revision 3035)
+++ /FCKeditor/branches/versions/2.6.x/editor/_source/internals/fcktablehandler.js	(revision 3036)
@@ -289,4 +289,11 @@
 		return false ;
 
+	// Check if the selected cells are all in the same table section (thead, tfoot or tbody)
+	for (var i = 0; i < cells.length; i++)
+	{
+		if ( cells[i].parentNode.parentNode != cells[0].parentNode.parentNode )
+			return false ;
+	}
+
 	this._MarkCells( cells, '_CellSelected' ) ;
 
@@ -840,4 +847,8 @@
 		return null ;
 
+	// Check if the selected cells are both in the same table section (thead, tfoot or tbody).
+	if ( refCell.parentNode.parentNode != nextCell.parentNode.parentNode )
+		return null ;
+
 	// The two cells must have the same horizontal geometry, otherwise merging does not makes sense.
 	this._MarkCells( [refCell, nextCell], '_SizeTest' ) ;
Index: /FCKeditor/branches/versions/2.6.x/editor/lang/_translationstatus.txt
===================================================================
--- /FCKeditor/branches/versions/2.6.x/editor/lang/_translationstatus.txt	(revision 3035)
+++ /FCKeditor/branches/versions/2.6.x/editor/lang/_translationstatus.txt	(revision 3036)
@@ -1,3 +1,3 @@
-/*
+﻿/*
  * FCKeditor - The text editor for Internet - http://www.fckeditor.net
  * Copyright (C) 2003-2009 Frederico Caldeira Knabben
@@ -43,8 +43,8 @@
 fo.js      Found: 420   Missing: 8
 fr-ca.js   Found: 419   Missing: 9
-fr.js      Found: 420   Missing: 8
+fr.js      Found: 428   Missing: 0
 gl.js      Found: 381   Missing: 47
 gu.js      Found: 411   Missing: 17
-he.js      Found: 420   Missing: 8
+he.js      Found: 428   Missing: 0
 hi.js      Found: 420   Missing: 8
 hr.js      Found: 420   Missing: 8
@@ -66,5 +66,5 @@
 pt.js      Found: 381   Missing: 47
 ro.js      Found: 410   Missing: 18
-ru.js      Found: 411   Missing: 17
+ru.js      Found: 427   Missing: 1
 sk.js      Found: 420   Missing: 8
 sl.js      Found: 411   Missing: 17
@@ -73,7 +73,7 @@
 sv.js      Found: 409   Missing: 19
 th.js      Found: 393   Missing: 35
-tr.js      Found: 396   Missing: 32
+tr.js      Found: 428   Missing: 0
 uk.js      Found: 419   Missing: 9
 vi.js      Found: 419   Missing: 9
-zh-cn.js   Found: 423   Missing: 5
+zh-cn.js   Found: 428   Missing: 0
 zh.js      Found: 423   Missing: 5
Index: /FCKeditor/branches/versions/2.6.x/editor/lang/fr.js
===================================================================
--- /FCKeditor/branches/versions/2.6.x/editor/lang/fr.js	(revision 3035)
+++ /FCKeditor/branches/versions/2.6.x/editor/lang/fr.js	(revision 3036)
@@ -309,9 +309,9 @@
 DlgTableCaption		: "Titre",
 DlgTableSummary		: "Résumé",
-DlgTableHeaders		: "Headers",	//MISSING
-DlgTableHeadersNone		: "None",	//MISSING
-DlgTableHeadersColumn	: "First column",	//MISSING
-DlgTableHeadersRow		: "First Row",	//MISSING
-DlgTableHeadersBoth		: "Both",	//MISSING
+DlgTableHeaders		: "Entêtes",
+DlgTableHeadersNone		: "Sans",
+DlgTableHeadersColumn	: "Première colonne",
+DlgTableHeadersRow		: "Première Ligne",
+DlgTableHeadersBoth		: "Les 2",
 
 // Table Cell Dialog
@@ -336,7 +336,7 @@
 DlgCellVerAlignBottom	: "Bas",
 DlgCellVerAlignBaseline	: "Bas du texte",
-DlgCellType		: "Cell Type",	//MISSING
-DlgCellTypeData		: "Data",	//MISSING
-DlgCellTypeHeader	: "Header",	//MISSING
+DlgCellType		: "Type de Cellule",
+DlgCellTypeData		: "Données",
+DlgCellTypeHeader	: "Entête",
 DlgCellRowSpan		: "Lignes fusionnées",
 DlgCellCollSpan		: "Colonnes fusionnées",
Index: /FCKeditor/branches/versions/2.6.x/editor/lang/he.js
===================================================================
--- /FCKeditor/branches/versions/2.6.x/editor/lang/he.js	(revision 3035)
+++ /FCKeditor/branches/versions/2.6.x/editor/lang/he.js	(revision 3036)
@@ -309,9 +309,9 @@
 DlgTableCaption		: "כיתוב",
 DlgTableSummary		: "סיכום",
-DlgTableHeaders		: "Headers",	//MISSING
-DlgTableHeadersNone		: "None",	//MISSING
-DlgTableHeadersColumn	: "First column",	//MISSING
-DlgTableHeadersRow		: "First Row",	//MISSING
-DlgTableHeadersBoth		: "Both",	//MISSING
+DlgTableHeaders		: "כותרות",
+DlgTableHeadersNone		: "אין",
+DlgTableHeadersColumn	: "עמודה ראשונה",
+DlgTableHeadersRow		: "שורה ראשונה",
+DlgTableHeadersBoth		: "שניהם",
 
 // Table Cell Dialog
@@ -336,7 +336,7 @@
 DlgCellVerAlignBottom	: "לתחתית",
 DlgCellVerAlignBaseline	: "קו תחתית",
-DlgCellType		: "Cell Type",	//MISSING
-DlgCellTypeData		: "Data",	//MISSING
-DlgCellTypeHeader	: "Header",	//MISSING
+DlgCellType		: "סוג תא",
+DlgCellTypeData		: "סוג",
+DlgCellTypeHeader	: "כותרת",
 DlgCellRowSpan		: "טווח שורות",
 DlgCellCollSpan		: "טווח עמודות",
Index: /FCKeditor/branches/versions/2.6.x/editor/lang/ru.js
===================================================================
--- /FCKeditor/branches/versions/2.6.x/editor/lang/ru.js	(revision 3035)
+++ /FCKeditor/branches/versions/2.6.x/editor/lang/ru.js	(revision 3036)
@@ -45,5 +45,5 @@
 InsertLink			: "Вставить/Редактировать ссылку",
 RemoveLink			: "Убрать ссылку",
-VisitLink			: "Open Link",	//MISSING
+VisitLink			: "Перейти по ссылке",
 Anchor				: "Вставить/Редактировать якорь",
 AnchorDelete		: "Убрать якорь",
@@ -74,7 +74,7 @@
 IncreaseIndent		: "Увеличить отступ",
 Blockquote			: "Цитата",
-CreateDiv			: "Create Div Container",	//MISSING
-EditDiv				: "Edit Div Container",	//MISSING
-DeleteDiv			: "Remove Div Container",	//MISSING
+CreateDiv			: "Создать Div контейнер",
+EditDiv				: "Редактировать Div контейнер",
+DeleteDiv			: "Удалить Div контейнер",
 Undo				: "Отменить",
 Redo				: "Повторить",
@@ -309,9 +309,9 @@
 DlgTableCaption		: "Заголовок",
 DlgTableSummary		: "Резюме",
-DlgTableHeaders		: "Headers",	//MISSING
-DlgTableHeadersNone		: "None",	//MISSING
-DlgTableHeadersColumn	: "First column",	//MISSING
-DlgTableHeadersRow		: "First Row",	//MISSING
-DlgTableHeadersBoth		: "Both",	//MISSING
+DlgTableHeaders		: "Заголовки",
+DlgTableHeadersNone		: "Нет",
+DlgTableHeadersColumn	: "Первый столбец",
+DlgTableHeadersRow		: "Первая строка",
+DlgTableHeadersBoth		: "Оба варианта",
 
 // Table Cell Dialog
@@ -336,7 +336,7 @@
 DlgCellVerAlignBottom	: "Снизу",
 DlgCellVerAlignBaseline	: "По базовой линии",
-DlgCellType		: "Cell Type",	//MISSING
-DlgCellTypeData		: "Data",	//MISSING
-DlgCellTypeHeader	: "Header",	//MISSING
+DlgCellType		: "Тип ячейки",
+DlgCellTypeData		: "Данные",
+DlgCellTypeHeader	: "Заголовок",
 DlgCellRowSpan		: "Диапазон строк (span)",
 DlgCellCollSpan		: "Диапазон колонок (span)",
@@ -528,7 +528,7 @@
 
 // Div Dialog
-DlgDivGeneralTab	: "General",	//MISSING
-DlgDivAdvancedTab	: "Advanced",	//MISSING
-DlgDivStyle		: "Style",	//MISSING
-DlgDivInlineStyle	: "Inline Style"	//MISSING
+DlgDivGeneralTab	: "Информация",
+DlgDivAdvancedTab	: "Расширенные настройки",
+DlgDivStyle		: "Стиль",
+DlgDivInlineStyle	: "Встроенные стили"
 };
Index: /FCKeditor/branches/versions/2.6.x/editor/lang/tr.js
===================================================================
--- /FCKeditor/branches/versions/2.6.x/editor/lang/tr.js	(revision 3035)
+++ /FCKeditor/branches/versions/2.6.x/editor/lang/tr.js	(revision 3036)
@@ -45,7 +45,7 @@
 InsertLink			: "Köprü Ekle/Düzenle",
 RemoveLink			: "Köprü Kaldır",
-VisitLink			: "Open Link",	//MISSING
+VisitLink			: "Köprü Aç",
 Anchor				: "Çapa Ekle/Düzenle",
-AnchorDelete		: "Remove Anchor",	//MISSING
+AnchorDelete		: "Çapa Sil",
 InsertImageLbl		: "Resim",
 InsertImage			: "Resim Ekle/Düzenle",
@@ -73,8 +73,8 @@
 DecreaseIndent		: "Sekme Azalt",
 IncreaseIndent		: "Sekme Arttır",
-Blockquote			: "Blockquote",	//MISSING
-CreateDiv			: "Create Div Container",	//MISSING
-EditDiv				: "Edit Div Container",	//MISSING
-DeleteDiv			: "Remove Div Container",	//MISSING
+Blockquote			: "Blok Oluştur",
+CreateDiv			: "Div Ekle",
+EditDiv				: "Div Düzenle",
+DeleteDiv			: "Div Sil",
 Undo				: "Geri Al",
 Redo				: "Tekrarla",
@@ -110,5 +110,5 @@
 
 FitWindow		: "Düzenleyici boyutunu büyüt",
-ShowBlocks		: "Show Blocks",	//MISSING
+ShowBlocks		: "Blokları Göster",
 
 // Context Menu
@@ -117,18 +117,18 @@
 RowCM				: "Satır",
 ColumnCM			: "Sütun",
-InsertRowAfter		: "Insert Row After",	//MISSING
-InsertRowBefore		: "Insert Row Before",	//MISSING
+InsertRowAfter		: "Satır Ekle - Sonra",
+InsertRowBefore		: "Satır Ekle - Önce",
 DeleteRows			: "Satır Sil",
-InsertColumnAfter	: "Insert Column After",	//MISSING
-InsertColumnBefore	: "Insert Column Before",	//MISSING
+InsertColumnAfter	: "Kolon Ekle - Sonra",
+InsertColumnBefore	: "Kolon Ekle - Önce",
 DeleteColumns		: "Sütun Sil",
-InsertCellAfter		: "Insert Cell After",	//MISSING
-InsertCellBefore	: "Insert Cell Before",	//MISSING
+InsertCellAfter		: "Hücre Ekle - Sonra",
+InsertCellBefore	: "Hücre Ekle - Önce",
 DeleteCells			: "Hücre Sil",
 MergeCells			: "Hücreleri Birleştir",
-MergeRight			: "Merge Right",	//MISSING
-MergeDown			: "Merge Down",	//MISSING
-HorizontalSplitCell	: "Split Cell Horizontally",	//MISSING
-VerticalSplitCell	: "Split Cell Vertically",	//MISSING
+MergeRight			: "Birleştir - Sağdaki İle ",
+MergeDown			: "Birleştir - Aşağıdaki İle ",
+HorizontalSplitCell	: "Hücreyi Yatay Böl",
+VerticalSplitCell	: "Hücreyi Dikey Böl",
 TableDelete			: "Tabloyu Sil",
 CellProperties		: "Hücre Özellikleri",
@@ -162,5 +162,5 @@
 BrowseServerBlocked : "Kaynak tarayıcısı açılamadı. Tüm \"popup blocker\" programlarının devre dışı olduğundan emin olun. (Yahoo toolbar, Msn toolbar, Google toolbar gibi)",
 DialogBlocked		: "Diyalog açmak mümkün olmadı. Tüm \"Popup Blocker\" programlarının devre dışı olduğundan emin olun.",
-VisitLinkBlocked	: "It was not possible to open a new window. Make sure all popup blockers are disabled.",	//MISSING
+VisitLinkBlocked	: "Yeni pencere açmak mümkün olmadı. Tüm \"Popup Blocker\" programlarının devre dışı olduğundan emin olun",
 
 // Dialogs
@@ -309,9 +309,9 @@
 DlgTableCaption		: "Başlık",
 DlgTableSummary		: "Özet",
-DlgTableHeaders		: "Headers",	//MISSING
-DlgTableHeadersNone		: "None",	//MISSING
-DlgTableHeadersColumn	: "First column",	//MISSING
-DlgTableHeadersRow		: "First Row",	//MISSING
-DlgTableHeadersBoth		: "Both",	//MISSING
+DlgTableHeaders		: "Başlıklar",
+DlgTableHeadersNone		: "Yok",
+DlgTableHeadersColumn	: "İlk Sütun",
+DlgTableHeadersRow		: "İlk Satır",
+DlgTableHeadersBoth		: "Her İkisi",
 
 // Table Cell Dialog
@@ -336,7 +336,7 @@
 DlgCellVerAlignBottom	: "Alt",
 DlgCellVerAlignBaseline	: "Taban Çizgisi",
-DlgCellType		: "Cell Type",	//MISSING
-DlgCellTypeData		: "Data",	//MISSING
-DlgCellTypeHeader	: "Header",	//MISSING
+DlgCellType		: "Hücre Tipi",
+DlgCellTypeData		: "Veri",
+DlgCellTypeHeader	: "Başlık",
 DlgCellRowSpan		: "Satır Kapla",
 DlgCellCollSpan		: "Sütun Kapla",
@@ -346,5 +346,5 @@
 
 // Find and Replace Dialog
-DlgFindAndReplaceTitle	: "Find and Replace",	//MISSING
+DlgFindAndReplaceTitle	: "Bul ve Değiştir",
 
 // Find Dialog
@@ -370,5 +370,5 @@
 
 DlgPasteMsg2	: "Lütfen aşağıdaki kutunun içine yapıştırın. (<STRONG>Ctrl+V</STRONG>) ve <STRONG>Tamam</STRONG> butonunu tıklayın.",
-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		: "Gezgin yazılımınızın güvenlik ayarları düzenleyicinin direkt olarak panoya erişimine izin vermiyor. Bu pencere içine tekrar yapıştırmalısınız..",
 DlgPasteIgnoreFont		: "Yazı Tipi tanımlarını yoksay",
 DlgPasteRemoveStyles	: "Biçem Tanımlarını çıkar",
@@ -528,7 +528,7 @@
 
 // Div Dialog
-DlgDivGeneralTab	: "General",	//MISSING
-DlgDivAdvancedTab	: "Advanced",	//MISSING
-DlgDivStyle		: "Style",	//MISSING
-DlgDivInlineStyle	: "Inline Style"	//MISSING
+DlgDivGeneralTab	: "Genel",
+DlgDivAdvancedTab	: "Gelişmiş",
+DlgDivStyle		: "Sitil",
+DlgDivInlineStyle	: "Satıriçi Sitil"
 };
Index: /FCKeditor/branches/versions/2.6.x/editor/lang/zh-cn.js
===================================================================
--- /FCKeditor/branches/versions/2.6.x/editor/lang/zh-cn.js	(revision 3035)
+++ /FCKeditor/branches/versions/2.6.x/editor/lang/zh-cn.js	(revision 3036)
@@ -74,7 +74,7 @@
 IncreaseIndent		: "增加缩进量",
 Blockquote			: "块引用",
-CreateDiv			: "新增 Div 标籤",
-EditDiv				: "更改 Div 标籤",
-DeleteDiv			: "删除 Div 标籤",
+CreateDiv			: "插入 Div 标签",
+EditDiv				: "编辑 Div 标签",
+DeleteDiv			: "删除 Div 标签",
 Undo				: "撤消",
 Redo				: "重做",
@@ -117,18 +117,18 @@
 RowCM				: "行",
 ColumnCM			: "列",
-InsertRowAfter		: "下插入行",
-InsertRowBefore		: "上插入行",
+InsertRowAfter		: "在下方插入行",
+InsertRowBefore		: "在上方插入行",
 DeleteRows			: "删除行",
-InsertColumnAfter	: "右插入列",
-InsertColumnBefore	: "左插入列",
+InsertColumnAfter	: "在右侧插入列",
+InsertColumnBefore	: "在左侧插入列",
 DeleteColumns		: "删除列",
-InsertCellAfter		: "右插入单元格",
-InsertCellBefore	: "左插入单元格",
+InsertCellAfter		: "在右侧插入单元格",
+InsertCellBefore	: "在左侧插入单元格",
 DeleteCells			: "删除单元格",
 MergeCells			: "合并单元格",
-MergeRight			: "右合并单元格",
-MergeDown			: "下合并单元格",
-HorizontalSplitCell	: "橫拆分单元格",
-VerticalSplitCell	: "縱拆分单元格",
+MergeRight			: "向右合并单元格",
+MergeDown			: "向下合并单元格",
+HorizontalSplitCell	: "水平拆分单元格",
+VerticalSplitCell	: "垂直拆分单元格",
 TableDelete			: "删除表格",
 CellProperties		: "单元格属性",
@@ -309,9 +309,9 @@
 DlgTableCaption		: "标题",
 DlgTableSummary		: "摘要",
-DlgTableHeaders		: "Headers",	//MISSING
-DlgTableHeadersNone		: "None",	//MISSING
-DlgTableHeadersColumn	: "First column",	//MISSING
-DlgTableHeadersRow		: "First Row",	//MISSING
-DlgTableHeadersBoth		: "Both",	//MISSING
+DlgTableHeaders		: "标题单元格",
+DlgTableHeadersNone		: "无",
+DlgTableHeadersColumn	: "第一列",
+DlgTableHeadersRow		: "第一行",
+DlgTableHeadersBoth		: "第一列和第一行",
 
 // Table Cell Dialog
@@ -515,5 +515,5 @@
 Templates			: "模板",
 DlgTemplatesTitle	: "内容模板",
-DlgTemplatesSelMsg	: "请选择编辑器内容模板<br>(当前内容将会被清除替换):",
+DlgTemplatesSelMsg	: "请选择编辑器内容模板:",
 DlgTemplatesLoading	: "正在加载模板列表，请稍等...",
 DlgTemplatesNoTpl	: "(没有模板)",
Index: /FCKeditor/branches/versions/2.6.x/editor/wsc/w.html
===================================================================
--- /FCKeditor/branches/versions/2.6.x/editor/wsc/w.html	(revision 3035)
+++ /FCKeditor/branches/versions/2.6.x/editor/wsc/w.html	(revision 3036)
@@ -133,5 +133,5 @@
 	var _errorMessage = 'The SpellChecker Service is currently unavailable.' ;
 	if ( 'undefined' != typeof( oEditor.FCK.Config.WSChLoaderScript ) )
-	    _errorMessage = '<div>The SpellChecker Service is currently unavailable.</div><p>Error application loading<br>service host: ' + oEditor.FCK.Config.WSChLoaderScript + '</p>';
+	    _errorMessage = '<div>The SpellChecker Service is currently unavailable.</div><p>Error loading application<br>service host: ' + oEditor.FCK.Config.WSChLoaderScript + '</p>';
 
 	var burnSpelling = function( oName, _eMessage )
@@ -143,13 +143,14 @@
 			if ( typeof( window[oName] ) == 'function' )
 				initAndSpell() ;
-			else if ( i++ == 30 )
+			else if ( i++ == 180 )
 				_cancelOnError( _eMessage ) ;
 		}
 	}
 
-	gInterval = window.setInterval( burnSpelling( 'doSpell', _errorMessage ), 100 ) ;
+	gInterval = window.setInterval( burnSpelling( 'doSpell', _errorMessage ), 250 ) ;
 
 	// WSC CORE init section
-	var baseUrl = "http://loader.spellchecker.net/sproxy_fck/sproxy.php" ;
+	var protocol = document.location.protocol || 'http:' ;
+	var baseUrl = protocol + '//loader.spellchecker.net/sproxy_fck/sproxy.php' ;
 	var plugin = "fck2" ;
 	var customerid = oEditor.FCK.Config.WSCnCustomerId
