X Windows - on Windows!
Development - To-Do List
See also the Cygwin/X category in sourceware.org bugzilla
Following is a list of open tasks on the Cygwin/X project:
Please note that this list is in no particular order, and presence on this list doesn't guarantee that a task is desirable, practical or even possible. Feel free to get started, though...
There are always bugs. We need to find them and fix them.
|native IME - XIM bridge||
Kensuke Matsuzaki wrote some clever code which provides a bridge between Windows native IME and XIM. This should be brought up to date and integrated.
Are we converting every frame of an animated cursor every time it appears? Build on the work in this commit to allow the XWin DDX visibility of the animated cursor, so it can do something cleverer.
|-mwextwm mode and xwinwm||
The XVideo extension is currently disabled. There is some skeleton code in the server, but it doesn't do anything yet. Possible to map Xv/XvMC to some DirectX or DxVA API?
Find and fix Composite bugs in rooted mode. Cunning plans for compositing in multiwindow mode (using Win2K+ window transparency)? (Integrated WM has to become composite-aware for this). Bug #10997
|Improve Windows clipboard integration||
Stamp out remaining clipboard bugs.
Extend the Cygwin/X clipboard manager, to handle data types other than XA_STRING, COMPOUND_TEXT, and UTF8_STRING; for example, BITMAP, PIXMAP, etc.
Automated upload of crash reports.
Testing of the implementation of indirect OpenGL acceleration using native WGL. Additional information is in the email asking for testing. Bug #10472
Testing of the implementation of direct OpenGL acceleration using native WGL.
|MultiWindow DirectDraw and DirectDraw NL||
Blit updates from a DirectDraw shadow framebuffer to the updated Win32 window instead of blitting from a GDI shadow framebuffer. This should be easy to start and should require only a single DirectDraw surface for the whole screen. It would be very important to just demonstrate that this can be done; clipping the blits to properly handle window z-order and such can be finished.
|Emulate PseudoColor on TrueColor||
Provide emulation of PseudoColor visuals (typically 8-bit palette-based visuals) on top of the default TrueColor visual (when running in 15, 16, 24, or 32 bit color depths). This will allow a lot of CAD-type applications that require PseudoColor to be run when Windows is in a color mode higher than 8 bits per pixel. The general idea here is to add checks to any copying of data between offscreen and onscreen, as well as between areas on the screen; these checks test for differing visual types and convert the pixels and colors accordingly.
See also upstream bug #4770.
|DirectDraw windowed PseudoColor||
Figure out a satisfactory solution for enabling DirectDraw engines to support PseudoColor visuals when running in 8 bit color modes. DirectDraw reserves the first ten and the last ten colors in each DirectDrawPalette object when running in windowed mode. Therefore, PseudoColor visuals are only supported with DirectDraw engines when running in fullscreen 8 bit color modes.