This is the mail archive of the cygwin-xfree@cygwin.com mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: X client wrapper for Win apps?


Stuart Adamson wrote:
Every Windows draw command is translated into calls to a GDI driver. this
driver is either the driver of the graphics card or a printer. The people
from wine already have written a driver which exports a GDI interface and
maps all calls to X11. Maybe this is a starting point.

But xfree86 will also be using this interface to draw to the screen (as will the logon box etc). I can see this becoming rather circular ....

You need to be able to set the GDI context per application.

Maybe the way forward is to filter calls to user32.dll (where most of the
basic
windowing functions end up). By filtering I mean renaming user32.dll to
user32-real.dll and writing your own user32.dll which either sends requests
to
X11 or to user32-real.dll, depending on the process id of the requesting
process.
Oh nice! I'll then look forward to the new Windows service pack and the number of new posts in the mailing about XFree being broken after the upgrade.

But I have a better idea, replace the kernel32.dll with our own that will convert Windows calls into a Linux/BSD/Un*x calls. That way, instead of having Windows window showing in Xfree running in Windows, you'll just have Windows on top of Xfree. We would also have a perfect Unix layer for Windows then, we won't need Cygwin anymore, we would use Linux/BSD/Un*x directly. It will also add to the security/performance/whatever.

Oh wait, that's WINE isn't it? ;)

Jehan




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]