Index: /CKEditor/branches/versions/3.4.x/CHANGES.html
===================================================================
--- /CKEditor/branches/versions/3.4.x/CHANGES.html	(revision 5691)
+++ /CKEditor/branches/versions/3.4.x/CHANGES.html	(revision 5692)
@@ -49,11 +49,4 @@
 	<ul>
 		<li><a href="http://dev.fckeditor.net/ticket/5911">#5911</a> : BIDI: List items should support and retain correct base language direction
-		<li><a href="http://dev.fckeditor.net/ticket/5436">#5436</a> : IE: Cursor goes to next Table Cell after we insert a Smiley in the Table Cell.</li>
-		<li><a href="http://dev.fckeditor.net/ticket/5580">#5580</a> : Maximize does not work properly in the Office 2003 and V2 skins.</li>
-		<li><a href="http://dev.fckeditor.net/ticket/5079">#5079</a> : Page break in lists move to above the list when you switch from WYSIWYG to HTML mode and back.</li>
-		<li><a href="http://dev.fckeditor.net/ticket/5728">#5728</a> : Text field & Upload Button in Upload Tab of Image Properties dialog are not shown Properly in Arabic.</li>
-		<li><a href="http://dev.fckeditor.net/ticket/5832">#5832</a> : Jquery adapter sample and SSL.</li>
-		<li><a href="http://dev.fckeditor.net/ticket/5843">#5843</a> : In CKEditor 3.3: When we set the focus in the 'instanceReady' event, FF3.6 is giving js error.</li>
-		<li><a href="http://dev.fckeditor.net/ticket/5435">#5435</a> : IE: we can't start Numbered/Bulleted list in Tables by Clicking on Insert/Remove Numbers/Bullets Icon.</li>
 		<li><a href="http://dev.fckeditor.net/ticket/5415">#5415</a> : Undo not working when we change the Table Properties for the table on a saved page.</li>
 	</ul>
Index: /CKEditor/branches/versions/3.4.x/_samples/jqueryadapter.html
===================================================================
--- /CKEditor/branches/versions/3.4.x/_samples/jqueryadapter.html	(revision 5691)
+++ /CKEditor/branches/versions/3.4.x/_samples/jqueryadapter.html	(revision 5692)
@@ -8,5 +8,5 @@
 	<title>jQuery adapter - CKEditor Sample</title>
 	<meta content="text/html; charset=utf-8" http-equiv="content-type" />
-	<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script>
+	<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script>
 	<!-- CKReleaser %REMOVE_LINE%
 	<script type="text/javascript" src="../ckeditor.js"></script>
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/dialogui/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/dialogui/plugin.js	(revision 5691)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/dialogui/plugin.js	(revision 5692)
@@ -1340,7 +1340,5 @@
 						frameDocument = frameElement.getFrameDocument(),
 						elementDefinition = this._.definition,
-						buttons = this._.buttons,
-						langDir = this._.dialog._.editor.lang.dir,
-						langCode = this._.dialog._.editor.langCode;
+						buttons = this._.buttons;
 
 					function generateFormField()
@@ -1356,6 +1354,6 @@
 							size = elementDefinition.size - ( CKEDITOR.env.ie  ? 7 : 0 );	// "Browse" button is bigger in IE.
 
-						frameDocument.$.write( [ '<html dir="' + langDir + '" lang="' + langCode + '"><head><title></title></head><body style="margin: 0; overflow: hidden; background: transparent;">',
-								'<form enctype="multipart/form-data" method="POST" dir="' + langDir + '" lang="' + langCode + '" action="',
+						frameDocument.$.write( [ '<html><head><title></title></head><body style="margin: 0; overflow: hidden; background: transparent;">',
+								'<form enctype="multipart/form-data" method="POST" action="',
 								CKEDITOR.tools.htmlEncode( elementDefinition.action ),
 								'">',
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/domiterator/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/domiterator/plugin.js	(revision 5691)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/domiterator/plugin.js	(revision 5692)
@@ -52,8 +52,4 @@
 			{
 				range = this.range.clone();
-
-				// Shrink the range to exclude harmful "noises" (#4087, #4450, #5435).
-				range.shrink( CKEDITOR.NODE_ELEMENT, true );
-
 				range.enlarge( this.forceBrBreak || !this.enlargeBr ?
 							   CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS : CKEDITOR.ENLARGE_BLOCK_CONTENTS );
@@ -217,6 +213,24 @@
 				// We have found a block boundary. Let's close the range and move out of the
 				// loop.
-				if ( isLast || ( closeRange && range ) )
+				if ( ( closeRange || isLast ) && range )
+				{
+					var boundaryNodes = range.getBoundaryNodes(),
+						startPath = new CKEDITOR.dom.elementPath( range.startContainer );
+
+					// Drop the range if it only contains bookmark nodes, and is
+					// not because of the original collapsed range. (#4087,#4450)
+					if ( boundaryNodes.startNode.getParent().equals( startPath.blockLimit )
+						 && isBookmark( boundaryNodes.startNode ) && isBookmark( boundaryNodes.endNode ) )
+					{
+						range = null;
+						this._.nextNode = null;
+					}
+					else
 						break;
+				}
+
+				if ( isLast )
+					break;
+
 			}
 
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/list/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/list/plugin.js	(revision 5691)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/list/plugin.js	(revision 5692)
@@ -454,4 +454,15 @@
 			{
 				range = ranges.shift();
+
+				var boundaryNodes = range.getBoundaryNodes(),
+					startNode = boundaryNodes.startNode,
+					endNode = boundaryNodes.endNode;
+
+				if ( startNode.type == CKEDITOR.NODE_ELEMENT && startNode.getName() == 'td' )
+					range.setStartAt( boundaryNodes.startNode, CKEDITOR.POSITION_AFTER_START );
+
+				if ( endNode.type == CKEDITOR.NODE_ELEMENT && endNode.getName() == 'td' )
+					range.setEndAt( boundaryNodes.endNode, CKEDITOR.POSITION_BEFORE_END );
+
 				var iterator = range.createIterator(),
 					block;
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/maximize/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/maximize/plugin.js	(revision 5691)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/maximize/plugin.js	(revision 5692)
@@ -227,8 +227,4 @@
 
 							shim =  createIframeShim( container );		// IE6 select element penetration when maximized. (#4459)
-							
-							// Add cke_maximized class before resize handle since that will change things sizes (#5580)
-							container.addClass( 'cke_maximized' );
-							
 							resizeHandler();
 
@@ -244,4 +240,6 @@
 							CKEDITOR.env.gecko && refreshCursor( editor );
 
+							// Add cke_maximized class.
+							container.addClass( 'cke_maximized' );
 						}
 						else if ( this.state == CKEDITOR.TRISTATE_ON )	// Restore from fullscreen if the state is on.
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/pagebreak/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/pagebreak/plugin.js	(revision 5691)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/pagebreak/plugin.js	(revision 5692)
@@ -31,6 +31,7 @@
 				'background-repeat: no-repeat;' +
 				'clear: both;' +
+				'display: block;' +
 				'float: none;' +
-				'width: 5em;' +
+				'width:100% !important; _width:99.9% !important;' +
 				'border-top: #999999 1px dotted;' +
 				'border-bottom: #999999 1px dotted;' +
@@ -54,5 +55,5 @@
 					elements :
 					{
-						span : function( element )
+						div : function( element )
 						{
 							var attributes = element.attributes,
@@ -62,5 +63,5 @@
 
 							if ( childStyle && ( /page-break-after\s*:\s*always/i ).test( style ) && ( /display\s*:\s*none/i ).test( childStyle ) )
-								return editor.createFakeParserElement( element, 'cke_pagebreak', 'span' );
+								return editor.createFakeParserElement( element, 'cke_pagebreak', 'div' );
 						}
 					}
@@ -77,8 +78,8 @@
 	{
 		// Create the element that represents a print break.
-		var breakObject = CKEDITOR.dom.element.createFromHtml( '<span style="page-break-after: always;"><span style="display: none;">&nbsp;</span></span>' );
+		var breakObject = CKEDITOR.dom.element.createFromHtml( '<div style="page-break-after: always;"><span style="display: none;">&nbsp;</span></div>' );
 
 		// Creates the fake image used for this element.
-		breakObject = editor.createFakeElement( breakObject, 'cke_pagebreak', 'span' );
+		breakObject = editor.createFakeElement( breakObject, 'cke_pagebreak', 'div' );
 
 		var ranges = editor.getSelection().getRanges();
@@ -93,4 +94,5 @@
 				breakObject = breakObject.clone( true );
 
+			range.splitBlock( 'p' );
 			range.insertNode( breakObject );
 			if ( i == ranges.length - 1 )
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/selection/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/selection/plugin.js	(revision 5691)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/selection/plugin.js	(revision 5692)
@@ -18,5 +18,5 @@
 			// releasing the WYSIWYG mode, so we need to check it first.
 			var sel = this.getSelection();
-			if ( !sel || !sel.document.$.window )
+			if ( !sel )
 				return;
 
Index: /CKEditor/branches/versions/3.4.x/_source/plugins/wysiwygarea/plugin.js
===================================================================
--- /CKEditor/branches/versions/3.4.x/_source/plugins/wysiwygarea/plugin.js	(revision 5691)
+++ /CKEditor/branches/versions/3.4.x/_source/plugins/wysiwygarea/plugin.js	(revision 5692)
@@ -123,6 +123,5 @@
 
 			var next = lastElement.getNextSourceNode( true );
-			var lastElementIsInline = CKEDITOR.dtd.$inline[ lastElement.getName() ]
-			if ( !lastElementIsInline && next && next.type == CKEDITOR.NODE_ELEMENT )
+			if ( next && next.type == CKEDITOR.NODE_ELEMENT )
 				range.moveToElementEditStart( next );
 
@@ -904,5 +903,5 @@
 			{
 				var element = evt.data;
-				if ( element.type == CKEDITOR.NODE_ELEMENT
+				if ( element.type = CKEDITOR.NODE_ELEMENT
 						&& ( element.is( 'input' ) || element.is( 'textarea' ) ) )
 				{
