Ove Kaaven <[EMAIL PROTECTED]> writes:

> So what I did, was to make DirectDraw take over the DISPLAY driver and let
> any normal CreateDCs done on it create a memory DC with the primary
> DirectDrawSurface DIBsection selected into it. Then I called into the DCE
> routines to let it reinitialize its DCE cache (which is used by GetDC) so
> it got these new DCs. GetDC calls the SetDrawable function on a cached DCE
> to set which window to draw on (which is not applicable to memory DCs), as
> well as the appropriate origin coordinates (which *is* applicable to
> memory DCs). (I haven't submitted these patches yet.)

I don't like the idea of abusing memory DCs or the DCE cache in this
way. Wouldn't it be possible to make this work by keeping all the
normal mechanism but simply substituting another X drawable on the DC
when in DGA mode? (i.e. DirectDraw would replace pSetDrawable with
something that puts the DIB section drawable into the DC instead of
the normal window).

-- 
Alexandre Julliard
[EMAIL PROTECTED]

Reply via email to