Index: /CKEditor/trunk/CHANGES.html
===================================================================
--- /CKEditor/trunk/CHANGES.html	(revision 3907)
+++ /CKEditor/trunk/CHANGES.html	(revision 3908)
@@ -140,5 +140,5 @@
 		</ul>
 		<li><a href="http://dev.fckeditor.net/ticket/3984">#3984</a> : [IE]The pre-formatted style is generating error.</li>
-		</li>
+		<li><a href="http://dev.fckeditor.net/ticket/3946">#3946</a> : Fixed unable to hide contextmenu.</li>		
 	</ul>
 	<h3>
Index: /CKEditor/trunk/_source/plugins/floatpanel/plugin.js
===================================================================
--- /CKEditor/trunk/_source/plugins/floatpanel/plugin.js	(revision 3907)
+++ /CKEditor/trunk/_source/plugins/floatpanel/plugin.js	(revision 3908)
@@ -121,4 +121,7 @@
 				if ( corner == 3 || corner == 4 )
 					top += offsetParent.$.offsetHeight - 1;
+
+				// Memorize offsetParent by it's ID.
+				this._.panel._.offsetParentId = offsetParent.getId();
 
 				element.setStyles(
@@ -234,5 +237,5 @@
 									}
 								}
-								if ( CKEDITOR.env.ie && CKEDITOR.env.quirks )
+								if ( CKEDITOR.env.ie )
 									iframe.focus();
 								else
@@ -270,4 +273,8 @@
 			showAsChild : function( panel, blockName, offsetParent, corner, offsetX, offsetY )
 			{
+				// Skip reshowing of child which is already visible.
+				if ( this._.activeChild == panel && panel._.panel._.offsetParentId == offsetParent.getId() )
+					return;
+
 				this.hideChild();
 
