In System.Windows.Forms:
2006-11-21 Chris Toshok <toshok@ximian.com>
* XplatUIOSX.cs: stub out InvalidateNC.
* XplatUIWin32.cs: implement InvalidateNC using the call I found
at http://www.dotnet247.com/247reference/msgs/58/292037.aspx.
* XplatUIX11.cs: rename InvalidateWholeWindow to InvalidateNC.
* XplatUIDriver.cs: add InvalidateNC abstract method.
* XplatUI.cs: add InvalidateNC.
In System.Windows.Forms.X11Internal:
2006-11-21 Chris Toshok <toshok@ximian.com>
* XplatUIX11-new.cs: implement the Idle event by adding/removing
it from the applicable X11ThreadQueue and remove the OnIdle
method. Also, implement the new InvalidateNC method.
* X11Display.cs: remove the idle dispatch code, as it can't be
generated by the XEventThread. It has to be generated by the
threads running the various message pumps, as it has to be invoked
on that same thread. Factor out the use of Hwnd.EnabledHwnd along
with the accompanying call to XTranslateCoordinates to a separate
function (RedirectMsgToEnabledAncestor). Fix some NRE's accessing
FocusWindow, since it's not an IntPtr anymore but a X11Hwnd.
* X11ThreadQueue.cs: move the Idle dispatch stuff here. Also,
correct the first arg to Idle - it's not the XplatUI, it's the
Thread.
* X11Hwnd.cs: numerous formatting changes, change the logic of
some if statements to make things cleaner. Factor out the
USER_TIME manipulation from a few places. Change all atom
manipulation to use IntPtr's instead of int's the way the old
XplatUIX11 stuff worked. This might help fix things for 64-bit
platforms.. more work needed there. Also, add the new
InvalidateNC support (basically the same as the old
InvalidateWholeWindow), and remove the InvalidateWholeWindow
calls.
svn path=/trunk/mcs/; revision=68261