Index: /CKEditor/branches/versions/3.4.x/CHANGES.html
===================================================================
--- /CKEditor/branches/versions/3.4.x/CHANGES.html	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/CHANGES.html	(revision 5656)
@@ -46,5 +46,12 @@
 			Fixed issues:</p>
 	<ul>
-		<li></li>
+		<li><a href="http://dev.fckeditor.net/ticket/1644">#1644</a> : Removed references to cursor:hand in the stylesheets.</li>
+		<li><a href="http://dev.fckeditor.net/ticket/5411">#5411</a> : anchor, hidden, page-break objects (images) can't no longer be resized.</li>
+		<li><a href="http://dev.fckeditor.net/ticket/5456">#5456</a> : Initial focus incorect in api_dialog sample page.</li>
+		<li><a href="http://dev.fckeditor.net/ticket/5628">#5628</a> : Incorrect &lt;pre&gt; siblings merging.</li>
+		<li><a href="http://dev.fckeditor.net/ticket/5829">#5829</a> : Adding validation for start number field in list style dialog.</li>
+		<li><a href="http://dev.fckeditor.net/ticket/5845">#5845</a> : Context menu on empty list item loses selection.</li>
+		<li><a href="http://dev.fckeditor.net/ticket/5860">#5860</a> : [IE] &gt; in attribute values are incorrectly escaped.</li>
+		<li><a href="http://dev.fckeditor.net/ticket/5905">#5905</a> : SCAYT is not any more enabled by default.</li>
 	</ul>
 	<h3>
@@ -67,4 +74,5 @@
 		<li><a href="http://dev.fckeditor.net/ticket/5807">#5807</a> : [FF2] SCAYT plugin is disabled in Firefox2 due to selection interference.</li>
 		<li><a href="http://dev.fckeditor.net/ticket/5772">#5772</a> : [IE] Some numbered list style types are not supported by IE6/7 and causes JavaScript error.</li>
+		<li><a href="http://dev.fckeditor.net/ticket/5840">#5840</a> : Some dialog access keys are conflicting with "Ctrl + A", select all text behavior on text input.</li>
 	</ul>
 	<h3>
Index: /CKEditor/branches/versions/3.4.x/_samples/api_dialog.html
===================================================================
--- /CKEditor/branches/versions/3.4.x/_samples/api_dialog.html	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_samples/api_dialog.html	(revision 5656)
@@ -92,4 +92,11 @@
 				]
 			});
+
+			// Rewrite the 'onFocus' handler to always focus 'url' field.
+			dialogDefinition.onFocus = function()
+			{
+				var urlField = this.getContentElement( 'info', 'url' );
+				urlField.select();
+			}
 		}
 	});
Index: /CKEditor/branches/versions/3.4.x/_source/core/dom/range.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/core/dom/range.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/core/dom/range.js	(revision 5656)
@@ -1,3 +1,3 @@
-﻿/*
+/*
 Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.
 For licensing, see LICENSE.html or http://ckeditor.com/license
@@ -698,5 +698,5 @@
 
 		/**
-		 * Move the range out of bookmark nodes if they're been the container.
+		 * Move the range out of bookmark nodes if they'd been the container.
 		 */
 		optimizeBookmark: function()
@@ -1167,11 +1167,11 @@
 					var walker = new CKEDITOR.dom.walker( walkerRange ),
 					    blockBoundary,  // The node on which the enlarging should stop.
-						tailBr, //
-					    defaultGuard = CKEDITOR.dom.walker.blockBoundary(
+						tailBr, // In case BR as block boundary.
+					    notBlockBoundary = CKEDITOR.dom.walker.blockBoundary(
 								( unit == CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS ) ? { br : 1 } : null ),
 						// Record the encountered 'blockBoundary' for later use.
 						boundaryGuard = function( node )
 						{
-							var retval = defaultGuard( node );
+							var retval = notBlockBoundary( node );
 							if ( !retval )
 								blockBoundary = node;
@@ -1194,6 +1194,7 @@
 					blockBoundary = blockBoundary || body;
 
-					// Start the range at different position by comparing
-					// the document position of it with 'enlargeable' node.
+					// Start the range either after the end of found block (<p>...</p>[text)
+					// or at the start of block (<p>[text...), by comparing the document position
+					// with 'enlargeable' node.
 					this.setStartAt(
 							blockBoundary,
@@ -1221,6 +1222,6 @@
 					blockBoundary = blockBoundary || body;
 
-					// Start the range at different position by comparing
-					// the document position of it with 'enlargeable' node.
+					// Close the range either before the found block start (text]<p>...</p>) or at the block end (...text]</p>)
+					// by comparing the document position with 'enlargeable' node.
 					this.setEndAt(
 							blockBoundary,
@@ -1238,6 +1239,13 @@
 		/**
 		 *  Descrease the range to make sure that boundaries
-		 *  always anchor beside text nodes or innermost element.
+		*  always anchor beside text nodes or innermost element.
 		 * @param {Number} mode  ( CKEDITOR.SHRINK_ELEMENT | CKEDITOR.SHRINK_TEXT ) The shrinking mode.
+		 * <dl>
+		 * 	 <dt>CKEDITOR.SHRINK_ELEMENT</dt>
+		 * 	 <dd>Shrink the range boundaries to the edge of the innermost element.</dd>
+		 * 	 <dt>CKEDITOR.SHRINK_TEXT</dt>
+		 * 	 <dd>Shrink the range boudaries to anchor by the side of enclosed text  node, range remains if there's no text nodes on boundaries at all.</dd>
+		  * </dl>
+		 * @param {Boolean} selectContents Whether result range anchors at the inner OR outer boundary of the node.   
 		 */
 		shrink : function( mode, selectContents )
@@ -1639,10 +1647,10 @@
 			   : CKEDITOR.POSITION_BEFORE_END );
 
-			var walker = new CKEDITOR.dom.walker( walkerRange ),
-			 retval = false;
+			var walker = new CKEDITOR.dom.walker( walkerRange );
 			walker.evaluator = elementBoundaryEval;
 			return walker[ checkType == CKEDITOR.START ?
 				'checkBackward' : 'checkForward' ]();
 		},
+
 		// Calls to this function may produce changes to the DOM. The range may
 		// be updated to reflect such changes.
@@ -1792,5 +1800,5 @@
 			var walkerRange = this.clone();
 
-			// Optimize and analyze the range to avoid DOM destructive nature of walker. (#
+			// Optimize and analyze the range to avoid DOM destructive nature of walker. (#5780)
 			walkerRange.optimize();
 			if ( walkerRange.startContainer.type != CKEDITOR.NODE_ELEMENT
@@ -1844,5 +1852,5 @@
 /**
  * Check boundary types.
- * @see CKEDITOR.dom.range::checkBoundaryOfElement
+ * @see CKEDITOR.dom.range.prototype.checkBoundaryOfElement
  */
 CKEDITOR.START = 1;
@@ -1850,4 +1858,8 @@
 CKEDITOR.STARTEND = 3;
 
+/**
+ * Shrink range types.
+ * @see CKEDITOR.dom.range.prototype.shrink
+ */
 CKEDITOR.SHRINK_ELEMENT = 1;
 CKEDITOR.SHRINK_TEXT = 2;
Index: /CKEditor/branches/versions/3.4.x/_source/core/dom/walker.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/core/dom/walker.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/core/dom/walker.js	(revision 5656)
@@ -360,10 +360,4 @@
 			return this.blockBoundary( { br : 1 } );
 	};
-	/**
-	 * Whether the node is a bookmark node's inner text node.
-	 */
-	CKEDITOR.dom.walker.bookmarkContents = function( node )
-	{
-	},
 
 	/**
Index: /CKEditor/branches/versions/3.4.x/_source/core/tools.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/core/tools.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/core/tools.js	(revision 5656)
@@ -221,4 +221,8 @@
 		},
 
+		/**
+		 * Whether the object contains no properties of it's own.
+ 		 * @param object
+		 */
 		isEmpty : function ( object )
 		{
@@ -230,4 +234,5 @@
 			return true;
 		},
+
 		/**
 		 * Transforms a CSS property name to its relative DOM style name.
@@ -338,5 +343,5 @@
 		htmlEncodeAttr : function( text )
 		{
-			return text.replace( /"/g, '&quot;' ).replace( /</g, '&lt;' ).replace( />/, '&gt;' );
+			return text.replace( /"/g, '&quot;' ).replace( /</g, '&lt;' ).replace( />/g, '&gt;' );
 		},
 
@@ -669,4 +674,8 @@
 		},
 
+		/**
+		 * Append the 'px' length unit to the size if it's missing.
+		 * @param length
+		 */
 		cssLength : (function()
 		{
@@ -678,4 +687,9 @@
 		})(),
 
+		/**
+		 * String specified by {@param str} repeats {@param times} times.
+		 * @param str
+		 * @param times
+		 */
 		repeat : function( str, times )
 		{
@@ -683,4 +697,8 @@
 		},
 
+		/**
+		 * Return the first successfully executed function's return value that
+		 * doesn't throw any exception.
+		 */
 		tryThese : function()
 		{
Index: /CKEditor/branches/versions/3.4.x/_source/lang/_translationstatus.txt
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/_translationstatus.txt	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/_translationstatus.txt	(revision 5656)
@@ -2,59 +2,59 @@
 For licensing, see LICENSE.html or http://ckeditor.com/license
 
-af.js      Found: 287 Missing: 237
-ar.js      Found: 451 Missing: 73
-bg.js      Found: 280 Missing: 244
-bn.js      Found: 281 Missing: 243
-bs.js      Found: 187 Missing: 337
-ca.js      Found: 490 Missing: 34
-cs.js      Found: 411 Missing: 113
-cy.js      Found: 452 Missing: 72
-da.js      Found: 404 Missing: 120
-de.js      Found: 444 Missing: 80
-el.js      Found: 286 Missing: 238
-en-au.js   Found: 369 Missing: 155
-en-ca.js   Found: 369 Missing: 155
-en-gb.js   Found: 370 Missing: 154
-eo.js      Found: 259 Missing: 265
-es.js      Found: 524 Missing: 0
-et.js      Found: 301 Missing: 223
-eu.js      Found: 403 Missing: 121
-fa.js      Found: 302 Missing: 222
-fi.js      Found: 518 Missing: 6
-fo.js      Found: 420 Missing: 104
-fr-ca.js   Found: 301 Missing: 223
-fr.js      Found: 403 Missing: 121
-gl.js      Found: 283 Missing: 241
-gu.js      Found: 300 Missing: 224
-he.js      Found: 523 Missing: 1
-hi.js      Found: 302 Missing: 222
-hr.js      Found: 404 Missing: 120
-hu.js      Found: 445 Missing: 79
-is.js      Found: 307 Missing: 217
-it.js      Found: 404 Missing: 120
-ja.js      Found: 413 Missing: 111
-km.js      Found: 275 Missing: 249
-ko.js      Found: 293 Missing: 231
-lt.js      Found: 306 Missing: 218
-lv.js      Found: 283 Missing: 241
-mn.js      Found: 300 Missing: 224
-ms.js      Found: 265 Missing: 259
-nb.js      Found: 470 Missing: 54
-nl.js      Found: 494 Missing: 30
-no.js      Found: 470 Missing: 54
-pl.js      Found: 411 Missing: 113
-pt-br.js   Found: 402 Missing: 122
-pt.js      Found: 282 Missing: 242
-ro.js      Found: 301 Missing: 223
-ru.js      Found: 467 Missing: 57
-sk.js      Found: 302 Missing: 222
-sl.js      Found: 410 Missing: 114
-sr-latn.js Found: 276 Missing: 248
-sr.js      Found: 275 Missing: 249
-sv.js      Found: 299 Missing: 225
-th.js      Found: 287 Missing: 237
-tr.js      Found: 494 Missing: 30
-uk.js      Found: 404 Missing: 120
-vi.js      Found: 481 Missing: 43
-zh-cn.js   Found: 404 Missing: 120
-zh.js      Found: 404 Missing: 120
+af.js      Found: 287 Missing: 238
+ar.js      Found: 451 Missing: 74
+bg.js      Found: 280 Missing: 245
+bn.js      Found: 281 Missing: 244
+bs.js      Found: 187 Missing: 338
+ca.js      Found: 490 Missing: 35
+cs.js      Found: 411 Missing: 114
+cy.js      Found: 452 Missing: 73
+da.js      Found: 404 Missing: 121
+de.js      Found: 444 Missing: 81
+el.js      Found: 286 Missing: 239
+en-au.js   Found: 369 Missing: 156
+en-ca.js   Found: 369 Missing: 156
+en-gb.js   Found: 370 Missing: 155
+eo.js      Found: 259 Missing: 266
+es.js      Found: 524 Missing: 1
+et.js      Found: 301 Missing: 224
+eu.js      Found: 403 Missing: 122
+fa.js      Found: 302 Missing: 223
+fi.js      Found: 518 Missing: 7
+fo.js      Found: 420 Missing: 105
+fr-ca.js   Found: 301 Missing: 224
+fr.js      Found: 403 Missing: 122
+gl.js      Found: 283 Missing: 242
+gu.js      Found: 300 Missing: 225
+he.js      Found: 523 Missing: 2
+hi.js      Found: 302 Missing: 223
+hr.js      Found: 404 Missing: 121
+hu.js      Found: 445 Missing: 80
+is.js      Found: 307 Missing: 218
+it.js      Found: 404 Missing: 121
+ja.js      Found: 413 Missing: 112
+km.js      Found: 275 Missing: 250
+ko.js      Found: 293 Missing: 232
+lt.js      Found: 306 Missing: 219
+lv.js      Found: 283 Missing: 242
+mn.js      Found: 300 Missing: 225
+ms.js      Found: 265 Missing: 260
+nb.js      Found: 470 Missing: 55
+nl.js      Found: 494 Missing: 31
+no.js      Found: 470 Missing: 55
+pl.js      Found: 411 Missing: 114
+pt-br.js   Found: 402 Missing: 123
+pt.js      Found: 282 Missing: 243
+ro.js      Found: 301 Missing: 224
+ru.js      Found: 467 Missing: 58
+sk.js      Found: 302 Missing: 223
+sl.js      Found: 410 Missing: 115
+sr-latn.js Found: 276 Missing: 249
+sr.js      Found: 275 Missing: 250
+sv.js      Found: 299 Missing: 226
+th.js      Found: 287 Missing: 238
+tr.js      Found: 494 Missing: 31
+uk.js      Found: 404 Missing: 121
+vi.js      Found: 481 Missing: 44
+zh-cn.js   Found: 404 Missing: 121
+zh.js      Found: 404 Missing: 121
Index: /CKEditor/branches/versions/3.4.x/_source/lang/af.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/af.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/af.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/ar.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/ar.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/ar.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/bg.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/bg.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/bg.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/bn.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/bn.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/bn.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/bs.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/bs.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/bs.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/ca.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/ca.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/ca.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/cs.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/cs.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/cs.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/cy.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/cy.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/cy.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/da.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/da.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/da.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/de.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/de.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/de.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/el.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/el.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/el.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/en-au.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/en-au.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/en-au.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/en-ca.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/en-ca.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/en-ca.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/en-gb.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/en-gb.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/en-gb.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/en.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/en.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/en.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type',
 		start				: 'Start',
+		validateStartNumber				:'List start number must be a whole number.',
 		circle				: 'Circle',
 		disc				: 'Disc',
Index: /CKEditor/branches/versions/3.4.x/_source/lang/eo.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/eo.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/eo.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/es.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/es.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/es.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Tipo',
 		start				: 'Inicio',
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Círculo',
 		disc				: 'Disco',
Index: /CKEditor/branches/versions/3.4.x/_source/lang/et.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/et.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/et.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/eu.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/eu.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/eu.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/fa.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/fa.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/fa.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/fi.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/fi.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/fi.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Tyyppi',
 		start				: 'Alku',
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Ympyrä',
 		disc				: 'Levy',
Index: /CKEditor/branches/versions/3.4.x/_source/lang/fo.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/fo.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/fo.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/fr-ca.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/fr-ca.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/fr-ca.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/fr.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/fr.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/fr.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/gl.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/gl.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/gl.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/gu.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/gu.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/gu.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/he.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/he.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/he.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'סוג',
 		start				: 'תחילת מספור',
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'עיגול ריק',
 		disc				: 'עיגול מלא',
Index: /CKEditor/branches/versions/3.4.x/_source/lang/hi.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/hi.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/hi.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/hr.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/hr.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/hr.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/hu.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/hu.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/hu.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/is.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/is.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/is.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/it.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/it.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/it.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/ja.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/ja.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/ja.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/km.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/km.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/km.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/ko.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/ko.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/ko.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/lt.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/lt.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/lt.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/lv.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/lv.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/lv.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/mn.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/mn.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/mn.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/ms.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/ms.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/ms.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/nb.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/nb.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/nb.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/nl.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/nl.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/nl.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/no.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/no.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/no.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/pl.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/pl.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/pl.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/pt-br.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/pt-br.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/pt-br.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/pt.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/pt.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/pt.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/ro.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/ro.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/ro.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/ru.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/ru.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/ru.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/sk.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/sk.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/sk.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/sl.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/sl.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/sl.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/sr-latn.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/sr-latn.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/sr-latn.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/sr.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/sr.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/sr.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/sv.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/sv.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/sv.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/th.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/th.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/th.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/tr.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/tr.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/tr.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/uk.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/uk.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/uk.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/vi.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/vi.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/vi.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Kiểu loại',
 		start				: 'Bắt đầu',
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Khuyên tròn',
 		disc				: 'Hình đĩa',
Index: /CKEditor/branches/versions/3.4.x/_source/lang/zh-cn.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/zh-cn.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/zh-cn.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/lang/zh.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/lang/zh.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/lang/zh.js	(revision 5656)
@@ -197,4 +197,5 @@
 		type				: 'Type', // MISSING
 		start				: 'Start', // MISSING
+		validateStartNumber				:'List start number must be a whole number.', // MISSING
 		circle				: 'Circle', // MISSING
 		disc				: 'Disc', // MISSING
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/basicstyles/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/basicstyles/plugin.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/basicstyles/plugin.js	(revision 5656)
@@ -59,5 +59,5 @@
  * @default { element : 'em', overrides : 'i' }
  * @example
- * config.coreStyles_bold = { element : 'i', overrides : 'em' };
+ * config.coreStyles_italic = { element : 'i', overrides : 'em' };
  * @example
  * CKEDITOR.config.coreStyles_italic = { element : 'span', attributes : {'class': 'Italic'} };
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/forms/dialogs/form.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/forms/dialogs/form.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/forms/dialogs/form.js	(revision 5656)
@@ -105,5 +105,5 @@
 						label : editor.lang.form.action,
 						'default' : '',
-						accessKey : 'A'
+						accessKey : 'T'
 					},
 					{
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/forms/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/forms/plugin.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/forms/plugin.js	(revision 5656)
@@ -28,6 +28,6 @@
 				'background-repeat: no-repeat;' +
 				'border: 1px solid #a9a9a9;' +
-				'width: 16px;' +
-				'height: 16px;' +
+				'width: 16px !important;' +
+				'height: 16px !important;' +
 			'}' );
 
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/image/dialogs/image.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/image/dialogs/image.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/image/dialogs/image.js	(revision 5656)
@@ -576,5 +576,5 @@
 							type : 'text',
 							label : editor.lang.image.alt,
-							accessKey : 'A',
+							accessKey : 'T',
 							'default' : '',
 							onChange : function()
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/link/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/link/plugin.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/link/plugin.js	(revision 5656)
@@ -38,6 +38,6 @@
 				'background-repeat: no-repeat;' +
 				'border: 1px solid #a9a9a9;' +
-				'width: 18px;' +
-				'height: 18px;' +
+				'width: 18px !important;' +
+				'height: 18px !important;' +
 			'}\n' +
 			'a.cke_anchor' +
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/liststyle/dialogs/liststyle.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/liststyle/dialogs/liststyle.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/liststyle/dialogs/liststyle.js	(revision 5656)
@@ -134,4 +134,5 @@
 										type : 'text',
 										id : 'start',
+										validate : CKEDITOR.dialog.validate.integer( editor.lang.list.validateStartNumber ),
 										setup : function( element )
 										{
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/pagebreak/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/pagebreak/plugin.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/pagebreak/plugin.js	(revision 5656)
@@ -33,8 +33,8 @@
 				'display: block;' +
 				'float: none;' +
-				'width:100%;_width:99.9%;' +
+				'width:100% !important; _width:99.9% !important;' +
 				'border-top: #999999 1px dotted;' +
 				'border-bottom: #999999 1px dotted;' +
-				'height: 5px;' +
+				'height: 5px !important;' +
 				'page-break-after: always;' +
 
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/pastefromword/filter/default.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/pastefromword/filter/default.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/pastefromword/filter/default.js	(revision 5656)
@@ -1,3 +1,3 @@
-﻿/*
+/*
 Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.
 For licensing, see LICENSE.html or http://ckeditor.com/license
@@ -61,6 +61,4 @@
 				if ( child )
 					return child;
-				else
-					continue;
 			}
 		}
@@ -69,5 +67,5 @@
 	};
 
-	// Adding a (set) of styles to the element's attributes.
+	// Adding a (set) of styles to the element's 'style' attributes.
 	elementPrototype.addStyle = function( name, value, isPrepend )
 	{
@@ -122,5 +120,5 @@
 
 	var cssLengthRelativeUnit = /^(\d[.\d]*)+(em|ex|px|gd|rem|vw|vh|vm|ch|mm|cm|in|pt|pc|deg|rad|ms|s|hz|khz){1}?/i;
-	var emptyMarginRegex = /^(?:\b0[^\s]*\s*){1,4}$/;
+	var emptyMarginRegex = /^(?:\b0[^\s]*\s*){1,4}$/;		// e.g. 0px 0pt 0px
 
 	var listBaseIndent = 0,
@@ -201,6 +199,5 @@
 			{
 				// <cke:listbullet> indicate a list item.
-				var children = element.children,
-					attrs = element.attributes,
+				var attrs = element.attributes,
 					listMarker;
 
@@ -590,5 +587,4 @@
 				elementMigrateFilter = filters.elementMigrateFilter,
 				styleMigrateFilter = CKEDITOR.tools.bind( this.filters.styleMigrateFilter, this.filters ),
-				bogusAttrFilter = filters.bogusAttrFilter,
 				createListBulletMarker = this.utils.createListBulletMarker,
 				flattenList = filters.flattenList,
@@ -757,8 +753,4 @@
 						element.filterChildren();
 
-						var attrs = element.attributes,
-							parent = element.parent,
-							children = element.children;
-
 						// Is the paragraph actually a list item?
 						if ( resolveListItem( element ) )
@@ -830,5 +822,4 @@
 							styleText && parent.addStyle( styleText );
 							delete element.name;
-							return;
 						}
 						// Convert the merged into a span with all attributes preserved.
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/scayt/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/scayt/plugin.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/scayt/plugin.js	(revision 5656)
@@ -383,5 +383,5 @@
 			// Default to 'http' for unknown.
 			protocol = protocol.search( /https?:/) != -1? protocol : 'http:';
-			var baseUrl  = 'svc.spellchecker.net/spellcheck31/lf/scayt24/loader__base.js';
+			var baseUrl  = 'svc.spellchecker.net/scayt25/loader__base.js';
 
 			var scaytUrl  =  editor.config.scayt_srcUrl || ( protocol + '//' + baseUrl );
@@ -454,7 +454,4 @@
 		exec: function( editor )
 		{
-			var autoStartup = editor.config.scayt_autoStartup;
-			autoStartup = ( autoStartup == undefined ) || autoStartup;
-
 			if ( plugin.isScaytReady( editor ) )
 			{
@@ -473,5 +470,5 @@
 				scayt_control.setDisabled( isEnabled );
 			}
-			else if ( !autoStartup && plugin.engineLoaded >= 0 )	// Load first time
+			else if ( !editor.config.scayt_autoStartup && plugin.engineLoaded >= 0 )	// Load first time
 			{
 				this.setState( CKEDITOR.TRISTATE_DISABLED );
@@ -779,6 +776,5 @@
 
 			// Start plugin
-			var autoStartup = editor.config.scayt_autoStartup;
-			if ( ( autoStartup == undefined ) || autoStartup )
+			if ( editor.config.scayt_autoStartup )
 			{
 				editor.on( 'instanceReady', function()
@@ -812,7 +808,7 @@
  * @name CKEDITOR.config.scayt_autoStartup
  * @type Boolean
- * @default true
- * @example
- * config.scayt_autoStartup = false;
+ * @default false
+ * @example
+ * config.scayt_autoStartup = true;
  */
 
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/selection/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/selection/plugin.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/selection/plugin.js	(revision 5656)
@@ -476,4 +476,13 @@
 				},
 
+		/**
+		 * Retrieve the {@link CKEDITOR.dom.range} instances that represent the current selection.
+		 * Note: Some browsers returns multiple ranges even on a sequent selection, e.g. Firefox returns
+		 * one range for each table cell when one or more table row is selected.
+		 * @return {Array}
+		 * @example
+		 * var ranges = selection.getRanges();
+		 * alert(ranges.length);
+		 */
 		getRanges :
 			CKEDITOR.env.ie ?
@@ -837,4 +846,8 @@
 		},
 
+		/**
+		 *  Make the current selection of type {@link CKEDITOR.SELECTION_ELEMENT} by enclosing the specified element.
+		 * @param element
+		 */
 		selectElement : function( element )
 		{
@@ -893,4 +906,9 @@
 		},
 
+		/**
+		 *  Adding the specified ranges to document selection preceding
+		 * by clearing up the original selection.
+		 * @param {CKEDITOR.dom.range} ranges
+		 */
 		selectRanges : function( ranges )
 		{
@@ -947,4 +965,10 @@
 		},
 
+		/**
+		 *  Create bookmark for every single of this selection range (from #getRanges)
+		 * by calling the {@link CKEDITOR.dom.range.prototype.createBookmark} method,
+		 * with extra cares to avoid interferon among those ranges. Same arguments are
+		 * received as with the underlay range method.
+		 */
 		createBookmarks : function( serializable )
 		{
@@ -979,4 +1003,10 @@
 		},
 
+		/**
+		 *  Create bookmark for every single of this selection range (from #getRanges)
+		 * by calling the {@link CKEDITOR.dom.range.prototype.createBookmark2} method,
+		 * with extra cares to avoid interferon among those ranges. Same arguments are
+		 * received as with the underlay range method.
+		 */
 		createBookmarks2 : function( normalized )
 		{
@@ -990,4 +1020,8 @@
 		},
 
+		/**
+		 * Select the virtual ranges denote by the bookmarks by calling #selectRanges.
+		 * @param bookmarks
+		 */
 		selectBookmarks : function( bookmarks )
 		{
@@ -1003,4 +1037,7 @@
 		},
 
+		/**
+		 * Retrieve the common ancestor node of the first range and the last range.
+		 */
 		getCommonAncestor : function()
 		{
@@ -1011,5 +1048,7 @@
 		},
 
-		// Moving scroll bar to the current selection's start position.
+		/**
+		 * Moving scroll bar to the current selection's start position.
+		 */
 		scrollIntoView : function()
 		{
@@ -1021,149 +1060,150 @@
 	};
 })();
+
 ( function()
 {
-var notWhitespaces = CKEDITOR.dom.walker.whitespaces( true );
-var fillerTextRegex = /\ufeff|\u00a0/;
-var nonCells = { table:1,tbody:1,tr:1 };
-
-CKEDITOR.dom.range.prototype.select =
-	CKEDITOR.env.ie ?
-		// V2
-		function( forceExpand )
-		{
-			var collapsed = this.collapsed;
-			var isStartMarkerAlone;
-			var dummySpan;
-
-			// IE doesn't support selecting the entire table row/cell, move the selection into cells, e.g.
-			// <table><tbody><tr>[<td>cell</b></td>... => <table><tbody><tr><td>[cell</td>...
-			if ( this.startContainer.type == CKEDITOR.NODE_ELEMENT && this.startContainer.getName() in nonCells
-				|| this.endContainer.type == CKEDITOR.NODE_ELEMENT && this.endContainer.getName() in nonCells )
-			{
-				this.shrink( CKEDITOR.NODE_ELEMENT, true );
-			}
-
-			var bookmark = this.createBookmark();
-
-			// Create marker tags for the start and end boundaries.
-			var startNode = bookmark.startNode;
-
-			var endNode;
-			if ( !collapsed )
-				endNode = bookmark.endNode;
-
-			// Create the main range which will be used for the selection.
-			var ieRange = this.document.$.body.createTextRange();
-
-			// Position the range at the start boundary.
-			ieRange.moveToElementText( startNode.$ );
-			ieRange.moveStart( 'character', 1 );
-
-			if ( endNode )
-			{
-				// Create a tool range for the end.
-				var ieRangeEnd = this.document.$.body.createTextRange();
-
-				// Position the tool range at the end.
-				ieRangeEnd.moveToElementText( endNode.$ );
-
-				// Move the end boundary of the main range to match the tool range.
-				ieRange.setEndPoint( 'EndToEnd', ieRangeEnd );
-				ieRange.moveEnd( 'character', -1 );
-			}
-			else
-			{
-				// The isStartMarkerAlone logic comes from V2. It guarantees that the lines
-				// will expand and that the cursor will be blinking on the right place.
-				// Actually, we are using this flag just to avoid using this hack in all
-				// situations, but just on those needed.
-				var next = startNode.getNext( notWhitespaces );
-				isStartMarkerAlone = ( !( next && next.getText && next.getText().match( fillerTextRegex ) )     // already a filler there?
-									  && ( forceExpand || !startNode.hasPrevious() || ( startNode.getPrevious().is && startNode.getPrevious().is( 'br' ) ) ) );
-
-				// Append a temporary <span>&#65279;</span> before the selection.
-				// This is needed to avoid IE destroying selections inside empty
-				// inline elements, like <b></b> (#253).
-				// It is also needed when placing the selection right after an inline
-				// element to avoid the selection moving inside of it.
-				dummySpan = this.document.createElement( 'span' );
-				dummySpan.setHtml( '&#65279;' );	// Zero Width No-Break Space (U+FEFF). See #1359.
-				dummySpan.insertBefore( startNode );
-
-				if ( isStartMarkerAlone )
-				{
-					// To expand empty blocks or line spaces after <br>, we need
-					// instead to have any char, which will be later deleted using the
-					// selection.
-					// \ufeff = Zero Width No-Break Space (U+FEFF). (#1359)
-					this.document.createText( '\ufeff' ).insertBefore( startNode );
-				}
-			}
-
-			// Remove the markers (reset the position, because of the changes in the DOM tree).
-			this.setStartBefore( startNode );
-			startNode.remove();
-
-			if ( collapsed )
-			{
-				if ( isStartMarkerAlone )
-				{
-					// Move the selection start to include the temporary \ufeff.
-					ieRange.moveStart( 'character', -1 );
-
+	var notWhitespaces = CKEDITOR.dom.walker.whitespaces( true ),
+			fillerTextRegex = /\ufeff|\u00a0/,
+			nonCells = { table:1,tbody:1,tr:1 };
+
+	CKEDITOR.dom.range.prototype.select =
+		CKEDITOR.env.ie ?
+			// V2
+			function( forceExpand )
+			{
+				var collapsed = this.collapsed;
+				var isStartMarkerAlone;
+				var dummySpan;
+
+				// IE doesn't support selecting the entire table row/cell, move the selection into cells, e.g.
+				// <table><tbody><tr>[<td>cell</b></td>... => <table><tbody><tr><td>[cell</td>...
+				if ( this.startContainer.type == CKEDITOR.NODE_ELEMENT && this.startContainer.getName() in nonCells
+					|| this.endContainer.type == CKEDITOR.NODE_ELEMENT && this.endContainer.getName() in nonCells )
+				{
+					this.shrink( CKEDITOR.NODE_ELEMENT, true );
+				}
+
+				var bookmark = this.createBookmark();
+
+				// Create marker tags for the start and end boundaries.
+				var startNode = bookmark.startNode;
+
+				var endNode;
+				if ( !collapsed )
+					endNode = bookmark.endNode;
+
+				// Create the main range which will be used for the selection.
+				var ieRange = this.document.$.body.createTextRange();
+
+				// Position the range at the start boundary.
+				ieRange.moveToElementText( startNode.$ );
+				ieRange.moveStart( 'character', 1 );
+
+				if ( endNode )
+				{
+					// Create a tool range for the end.
+					var ieRangeEnd = this.document.$.body.createTextRange();
+
+					// Position the tool range at the end.
+					ieRangeEnd.moveToElementText( endNode.$ );
+
+					// Move the end boundary of the main range to match the tool range.
+					ieRange.setEndPoint( 'EndToEnd', ieRangeEnd );
+					ieRange.moveEnd( 'character', -1 );
+				}
+				else
+				{
+					// The isStartMarkerAlone logic comes from V2. It guarantees that the lines
+					// will expand and that the cursor will be blinking on the right place.
+					// Actually, we are using this flag just to avoid using this hack in all
+					// situations, but just on those needed.
+					var next = startNode.getNext( notWhitespaces );
+					isStartMarkerAlone = ( !( next && next.getText && next.getText().match( fillerTextRegex ) )     // already a filler there?
+										  && ( forceExpand || !startNode.hasPrevious() || ( startNode.getPrevious().is && startNode.getPrevious().is( 'br' ) ) ) );
+
+					// Append a temporary <span>&#65279;</span> before the selection.
+					// This is needed to avoid IE destroying selections inside empty
+					// inline elements, like <b></b> (#253).
+					// It is also needed when placing the selection right after an inline
+					// element to avoid the selection moving inside of it.
+					dummySpan = this.document.createElement( 'span' );
+					dummySpan.setHtml( '&#65279;' );	// Zero Width No-Break Space (U+FEFF). See #1359.
+					dummySpan.insertBefore( startNode );
+
+					if ( isStartMarkerAlone )
+					{
+						// To expand empty blocks or line spaces after <br>, we need
+						// instead to have any char, which will be later deleted using the
+						// selection.
+						// \ufeff = Zero Width No-Break Space (U+FEFF). (#1359)
+						this.document.createText( '\ufeff' ).insertBefore( startNode );
+					}
+				}
+
+				// Remove the markers (reset the position, because of the changes in the DOM tree).
+				this.setStartBefore( startNode );
+				startNode.remove();
+
+				if ( collapsed )
+				{
+					if ( isStartMarkerAlone )
+					{
+						// Move the selection start to include the temporary \ufeff.
+						ieRange.moveStart( 'character', -1 );
+
+						ieRange.select();
+
+						// Remove our temporary stuff.
+						this.document.$.selection.clear();
+					}
+					else
+						ieRange.select();
+
+					this.moveToPosition( dummySpan, CKEDITOR.POSITION_BEFORE_START );
+					dummySpan.remove();
+				}
+				else
+				{
+					this.setEndBefore( endNode );
+					endNode.remove();
 					ieRange.select();
-
-					// Remove our temporary stuff.
-					this.document.$.selection.clear();
-				}
-				else
-					ieRange.select();
-
-				this.moveToPosition( dummySpan, CKEDITOR.POSITION_BEFORE_START );
-				dummySpan.remove();
-			}
-			else
-			{
-				this.setEndBefore( endNode );
-				endNode.remove();
-				ieRange.select();
-			}
-
-			this.document.fire( 'selectionchange' );
-		}
-	:
-		function()
-		{
-			var startContainer = this.startContainer;
-
-			// If we have a collapsed range, inside an empty element, we must add
-			// something to it, otherwise the caret will not be visible.
-			if ( this.collapsed && startContainer.type == CKEDITOR.NODE_ELEMENT && !startContainer.getChildCount() )
-				startContainer.append( new CKEDITOR.dom.text( '' ) );
-
-			var nativeRange = this.document.$.createRange();
-			nativeRange.setStart( startContainer.$, this.startOffset );
-
-			try
-			{
-				nativeRange.setEnd( this.endContainer.$, this.endOffset );
-			}
-			catch ( e )
-			{
-				// There is a bug in Firefox implementation (it would be too easy
-				// otherwise). The new start can't be after the end (W3C says it can).
-				// So, let's create a new range and collapse it to the desired point.
-				if ( e.toString().indexOf( 'NS_ERROR_ILLEGAL_VALUE' ) >= 0 )
-				{
-					this.collapse( true );
+				}
+
+				this.document.fire( 'selectionchange' );
+			}
+		:
+			function()
+			{
+				var startContainer = this.startContainer;
+
+				// If we have a collapsed range, inside an empty element, we must add
+				// something to it, otherwise the caret will not be visible.
+				if ( this.collapsed && startContainer.type == CKEDITOR.NODE_ELEMENT && !startContainer.getChildCount() )
+					startContainer.append( new CKEDITOR.dom.text( '' ) );
+
+				var nativeRange = this.document.$.createRange();
+				nativeRange.setStart( startContainer.$, this.startOffset );
+
+				try
+				{
 					nativeRange.setEnd( this.endContainer.$, this.endOffset );
 				}
-				else
-					throw( e );
-			}
-
-			var selection = this.document.getSelection().getNative();
-			selection.removeAllRanges();
-			selection.addRange( nativeRange );
-		};
+				catch ( e )
+				{
+					// There is a bug in Firefox implementation (it would be too easy
+					// otherwise). The new start can't be after the end (W3C says it can).
+					// So, let's create a new range and collapse it to the desired point.
+					if ( e.toString().indexOf( 'NS_ERROR_ILLEGAL_VALUE' ) >= 0 )
+					{
+						this.collapse( true );
+						nativeRange.setEnd( this.endContainer.$, this.endOffset );
+					}
+					else
+						throw( e );
+				}
+
+				var selection = this.document.getSelection().getNative();
+				selection.removeAllRanges();
+				selection.addRange( nativeRange );
+			};
 } )();
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/styles/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/styles/plugin.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/styles/plugin.js	(revision 5656)
@@ -1,3 +1,3 @@
-﻿/*
+/*
 Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.
 For licensing, see LICENSE.html or http://ckeditor.com/license
@@ -61,5 +61,5 @@
 						// Save the current state, so it can be compared next
 						// time.
-						callback.state !== currentState;
+						callback.state = currentState;
 					}
 				}
@@ -67,5 +67,5 @@
 	}
 
-	// Save the callback info, so it can be checked on the next occurence of
+	// Save the callback info, so it can be checked on the next occurrence of
 	// selectionChange.
 	styleStateChangeCallbacks.push( { style : style, fn : callback } );
@@ -181,4 +181,8 @@
 		},
 
+		/**
+		 * Whether this style can be applied at the element path.
+ 		 * @param elementPath
+		 */
 		checkApplicable : function( elementPath )
 		{
@@ -223,4 +227,6 @@
 
 						var elementAttr = element.getAttribute( attName ) || '';
+
+						// Special treatment for 'style' attribute is required.
 						if ( attName == 'style' ?
 							compareCssText( attribs[ attName ], normalizeCssText( elementAttr, false ) )
@@ -769,4 +775,5 @@
 	}
 
+	var nonWhitespaces = CKEDITOR.dom.walker.whitespaces( true );
 	/**
 	 * Merge a <pre> block with a previous sibling if available.
@@ -775,5 +782,5 @@
 	{
 		var previousBlock;
-		if ( !( ( previousBlock = preBlock.getPreviousSourceNode( true, CKEDITOR.NODE_ELEMENT ) )
+		if ( !( ( previousBlock = preBlock.getPrevious( nonWhitespaces ) )
 				 && previousBlock.is
 				 && previousBlock.is( 'pre') ) )
@@ -1199,4 +1206,5 @@
 	}
 
+	// Make the comparison of attribute value easier by standardizing it.
 	function normalizeProperty( name, value, isStyle )
 	{
@@ -1206,4 +1214,5 @@
 	}
 
+	// Make the comparison of style text easier by standardizing it.
 	function normalizeCssText( unparsedCssText, nativeNormalize )
 	{
@@ -1241,4 +1250,10 @@
 	}
 
+	/**
+	 * Compare two bunch of styles, with the speciality that value 'inherit'
+	 * is treated as a wildcard which will match any value.
+	 * @param {Object|String} source
+	 * @param {Object|String} target
+	 */
 	function compareCssText( source, target )
 	{
@@ -1247,6 +1262,4 @@
 		for( var name in source )
 		{
-			// Value 'inherit'  is treated as a wildcard,
-			// which will match any value.
 			if ( !( name in target &&
 					( target[ name ] == source[ name ]
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/wsc/dialogs/wsc.css
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/wsc/dialogs/wsc.css	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/wsc/dialogs/wsc.css	(revision 5656)
@@ -71,5 +71,4 @@
 	border-bottom: #d5d59d 1px solid;
 	cursor: pointer;
-	cursor: hand;
 }
 
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/wysiwygarea/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/wysiwygarea/plugin.js	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/wysiwygarea/plugin.js	(revision 5656)
@@ -15,5 +15,5 @@
 
 	// Matching an empty paragraph at the end of document.
-	var emptyParagraphRegexp = /\s*<(p|div|address|h\d|center)[^>]*>\s*(?:<br[^>]*>|&nbsp;|\u00A0|&#160;)?\s*(:?<\/\1>)?\s*(?=$|<\/body>)/gi;
+	var emptyParagraphRegexp = /\s*<(p|div|address|h\d|center|li)[^>]*>\s*(?:<br[^>]*>|&nbsp;|\u00A0|&#160;)?\s*(:?<\/\1>)?\s*(?=$|<\/body>)/gi;
 
 	function onInsertHtml( evt )
@@ -443,4 +443,24 @@
 								if ( control.is( 'img', 'hr', 'input', 'textarea', 'select' ) )
 									editor.getSelection().selectElement( control );
+							} );
+						}
+
+						if ( CKEDITOR.env.gecko )
+						{
+							domDocument.on( 'mouseup', function( ev )
+							{
+								if ( ev.data.$.button == 2 )
+								{
+									var target = ev.data.getTarget();
+
+									// Prevent right click from selecting an empty block even
+									// when selection is anchored inside it. (#5845) 
+									if ( !target.getOuterHtml().replace( emptyParagraphRegexp, '' ) )
+									{
+										var range = new CKEDITOR.dom.range( domDocument );
+										range.moveToElementEditStart( target );
+										range.select( true );
+									}
+								}
 							} );
 						}
Index: /CKEditor/branches/versions/3.4.x/_source/skins/kama/dialog.css
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/skins/kama/dialog.css	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/skins/kama/dialog.css	(revision 5656)
@@ -677,5 +677,4 @@
 	border: outset 1px;
 	cursor: pointer;
-	cursor: hand;
 }
 
@@ -742,5 +741,4 @@
 {
 	cursor: pointer;
-	cursor: hand;
 }
 
@@ -775,5 +773,4 @@
 	display: inline;
 	cursor: pointer;
-	cursor: hand;
 	font-weight: bold;
 	position: relative;
Index: /CKEditor/branches/versions/3.4.x/_source/skins/office2003/dialog.css
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/skins/office2003/dialog.css	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/skins/office2003/dialog.css	(revision 5656)
@@ -608,5 +608,4 @@
 	border: outset 1px;
 	cursor: pointer;
-	cursor: hand;
 }
 
@@ -673,5 +672,4 @@
 {
 	cursor: pointer;
-	cursor: hand;
 }
 
@@ -705,5 +703,4 @@
 	display: inline;
 	cursor: pointer;
-	cursor: hand;
 	font-weight: bold;
 	position: relative;
Index: /CKEditor/branches/versions/3.4.x/_source/skins/v2/dialog.css
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/skins/v2/dialog.css	(revision 5655)
+++ /CKEditor/branches/versions/3.4.x/_source/skins/v2/dialog.css	(revision 5656)
@@ -610,5 +610,4 @@
 	border: outset 1px;
 	cursor: pointer;
-	cursor: hand;
 }
 
@@ -675,5 +674,4 @@
 {
 	cursor: pointer;
-	cursor: hand;
 }
 
@@ -707,5 +705,4 @@
 	display: inline;
 	cursor: pointer;
-	cursor: hand;
 	font-weight: bold;
 	position: relative;
