It seems the right thing is to setup DGA in the thread that needs to receive the events, using the normal thread display. But this will require understanding exactly why doing other X calls on this display breaks event processing, and finding a work around for that.
Well, this was the answer I dreaded (and the one solution I did not propose in my mail :-) ) : to look under the hood of XFree and try to see why standard X programming would lock up the DGA2 events...
I will try to see what I can do (nobody should hold its breath though as I do not have much hacking time in the next weeks and as I started trying to make work Marcus' preliminary Xvideo patch).
In the same kind of solution, one could also remove most of TG's DIB code once we enter DGA2 mode, but as I do not know at all how all this is working, I will let someone else investigate this particular option :-)
Lionel
PS: what happened to my other DGA2 related patch I sent friday evening (the one adding X error checking) ?