Index: /CKEditor/trunk/CHANGES.html
===================================================================
--- /CKEditor/trunk/CHANGES.html	(revision 5958)
+++ /CKEditor/trunk/CHANGES.html	(revision 5959)
@@ -71,5 +71,4 @@
 		<li><a href="http://dev.ckeditor.com/ticket/5646">#5646</a> : Parser incorreclty removes inline element when there's only one comment node enclosed.</li>
 		<li><a href="http://dev.ckeditor.com/ticket/6189">#6189</a> : Minor code size reduction.</li>
-		<li><a href="http://dev.ckeditor.com/ticket/6100">#6100</a> : BIDI: when we change Table language direction indentation of text in Table cells is not applied correctly.</li>
 		<li><a href="http://dev.ckeditor.com/ticket/5045">#5045</a> : uiColor behaved wrong if multiple editors were used with period in their names.</li>
 		<li>Updated the following language files:<ul>
Index: /CKEditor/trunk/_source/plugins/bidi/plugin.js
===================================================================
--- /CKEditor/trunk/_source/plugins/bidi/plugin.js	(revision 5958)
+++ /CKEditor/trunk/_source/plugins/bidi/plugin.js	(revision 5959)
@@ -68,5 +68,33 @@
 		var dirAfter = element.getComputedStyle( 'direction' );
 		if ( dirAfter != dirBefore )
-			editor.fire( 'dirChanged', element );
+		{
+			var range = new CKEDITOR.dom.range( element.getDocument() );
+			range.setStartBefore( element );
+			range.setEndAfter( element );
+
+			var walker = new CKEDITOR.dom.walker( range );
+
+			var node;
+			while ( ( node = walker.next() ) )
+			{
+				if ( node.type == CKEDITOR.NODE_ELEMENT )
+				{
+					// A child with dir defined is to be ignored.
+					if ( !node.equals( element ) && node.hasAttribute( 'dir' ) )
+					{
+						range.setStartAfter( node );
+						walker = new CKEDITOR.dom.walker( range );
+						continue;
+					}
+
+					// Switch the margins.
+					var marginLeft = node.getStyle( 'margin-right' ),
+						marginRight = node.getStyle( 'margin-left' );
+
+					marginLeft ? node.setStyle( 'margin-left', marginLeft ) : node.removeStyle( 'margin-left' );
+					marginRight ? node.setStyle( 'margin-right', marginRight ) : node.removeStyle( 'margin-right' );
+				}
+			}
+		}
 
 		editor.forceNextSelectionCheck();
Index: /CKEditor/trunk/_source/plugins/dialogadvtab/plugin.js
===================================================================
--- /CKEditor/trunk/_source/plugins/dialogadvtab/plugin.js	(revision 5958)
+++ /CKEditor/trunk/_source/plugins/dialogadvtab/plugin.js	(revision 5959)
@@ -36,12 +36,4 @@
 		var attrName = this.att,
 			value = this.getValue();
-
-		// Broadcast Lang Dir change
-		if ( attrName == 'dir' )
-		{
-			var dir = element.getAttribute( attrName, value );
-			if ( dir != value )
-				this._.dialog._.editor.fire( 'dirChanged', element );
-		}
 
 		if ( value )
Index: /CKEditor/trunk/_source/plugins/indent/plugin.js
===================================================================
--- /CKEditor/trunk/_source/plugins/indent/plugin.js	(revision 5958)
+++ /CKEditor/trunk/_source/plugins/indent/plugin.js	(revision 5959)
@@ -386,36 +386,4 @@
 					"}" );
 			}
-
-			// Register dirChanged listener.
-			editor.on( 'dirChanged', function( e )
-			{
-				var range = new CKEDITOR.dom.range( editor.document );
-				range.setStartBefore( e.data );
-				range.setEndAfter( e.data );
-				
-				var walker = new CKEDITOR.dom.walker( range ),
-					node;
-
-				while ( ( node = walker.next() ) )
-				{
-					if ( node.type == CKEDITOR.NODE_ELEMENT )
-					{
-						// A child with dir defined is to be ignored.
-						if ( !node.equals( e.data ) && node.hasAttribute( 'dir' ) )
-						{
-							range.setStartAfter( node );
-							walker = new CKEDITOR.dom.walker( range );
-							continue;
-						}
-
-						// Switch the margins.
-						var marginLeft = node.getStyle( 'margin-right' ),
-							marginRight = node.getStyle( 'margin-left' );
-
-						marginLeft ? node.setStyle( 'margin-left', marginLeft ) : node.removeStyle( 'margin-left' );
-						marginRight ? node.setStyle( 'margin-right', marginRight ) : node.removeStyle( 'margin-right' );
-					}
-				}
-			});
 		},
 
