2007-03-19 Chris Toshok <toshok@ximian.com>
commit3c5187faf3832e6252f0921e359d9f69eafb72e1
authorChris Toshok <toshok@novell.com>
Mon, 19 Mar 2007 11:08:52 +0000 (19 11:08 -0000)
committerChris Toshok <toshok@novell.com>
Mon, 19 Mar 2007 11:08:52 +0000 (19 11:08 -0000)
tree7716afbcd1a42042c41c194afdbb486171b2daaf
parent32fd5baf8ed190828dbee0166f11f42e3f7eed15
2007-03-19  Chris Toshok  <toshok@ximian.com>

[ Fixes bug #80604]

* XplatUIX11.cs (WaitForHwndMessage): change this to actually
swallow the message we're waiting on, instead of delivering it, as
this is only used for the WM_SHOWWINDOW raised from
MapWindow/UnmapWindow, and the message needs to be generated
(MapWindow, UnmapWindow): generate the WM_SHOWWINDOW message
before doing the Map/Unmap.  Also make sure that the Hwnd is still
alive after the message has been handled.

*before* the window is shown.

* Control.cs (CreateControl): guard a few more things inside the
if (!is_created) block, as we might end up being called again -
yay .net.
(WmShowWindow): call CreateControl if we're showing the control.

svn path=/trunk/mcs/; revision=74599
mcs/class/Managed.Windows.Forms/System.Windows.Forms/ChangeLog
mcs/class/Managed.Windows.Forms/System.Windows.Forms/Control.cs
mcs/class/Managed.Windows.Forms/System.Windows.Forms/XplatUIX11.cs