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

Reply via email to