Author: toshok
Date: 2006-11-28 00:29:51 -0500 (Tue, 28 Nov 2006)
New Revision: 68561
Modified:
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.X11Internal/NOTES
Log:
more notes
Modified:
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.X11Internal/NOTES
===================================================================
---
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.X11Internal/NOTES
2006-11-28 04:53:49 UTC (rev 68560)
+++
trunk/mcs/class/Managed.Windows.Forms/System.Windows.Forms.X11Internal/NOTES
2006-11-28 05:29:51 UTC (rev 68561)
@@ -1,5 +1,19 @@
Application.Idle is invoked on the same thread used to add the event
our hacky double buffering only works on the client area, not the nc
-area. need to move to a more XplatUI solution involving server-side drawing
surfaces
-(pixmaps in the X case).
+area. need to move to a more XplatUI solution involving server-side
+drawing surfaces (pixmaps in the X case).
+
+right now the expose/configure event aggregating is done in the
+XEventThread (in the hwnd code, but in the thread running the x event
+loop). There is probably a way to get it to run in the thread doing
+GetMessage, probably by making GetMessage know about both the xevent
+and paint queue's, and having it consume the x queue until there's
+nothing left, doing the AddExpose stuff there. then, once the xqueue
+is empty, consume the paint queue. This has the added benefit of
+making the paint queue a ThreadQueue local thing - no locking will be
+needed on it, since the only thing touching it will be the thread
+running the message pump.
+
+-- need to check if Invalidate can be called from other threads in
+.net, and if it is called, whether or not anything happens.
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches