First of all, thank you for all your hard work on
porting XFree to OS X/Darwin.
Unfortunately, though, there seems to be a problem with
drawing rectangles in Rootless mode, though it works
fine in FullScreen mode. Two examples I've noticed are
resizing windows using FVWM2 and drawing rectangles on
plots in Matlab on an exported display. (_Not_ Matlab
for OS X. Running Matlab on a Linux machine and
exporting the display to XDarwin.) Here is a more
detailed description of what happens in FVWM2.
Start XDarwin (XFree 220.127.116.11) in FullScreen mode, start
FVWM2 from xinitrc, and run an XTerm. When resizing the
window, a black outline of the window with a 3x3 grid
of rectangles is drawn that shows the size of the
window after resizing. This outline follows the mouse
movement. Shutdown XServer.
Start XDarwin in Rootless mode and again start FVWM2
and an XTerm. When resizing the window, there is no
outline. However, resizing _does_ work.
This is also true for moving windows.
This does not appear to be a bug with FVWM2, since it
also occurs when running TWM instead of FVWM2, though
they may have similar ancestry (?). In FullScreen mode,
TWM works fine, but is missing the rectangular outlines
in Rootless mode.
This does not happen in OroborusOSX.
Tried replacing XDarwin with Apple's X11 pre-beta, and
this problem still exists with FVWM2.
Searching through the source code for FVWM2
(fvwm-2.4.13.tar.gz -- I compiled my FVWM from this
source), the resizing seems to be handled by
fvwm/move_resize.c, and the outline drawing in the
function 'static void draw_move_resize_grid'. The
drawing of the outline rectangles seems to be called by
'XDrawRectangles(dpy, Scr.Root, Scr.XorGC, rects,
10);'. I have no experience with X programming, so
please forgive my ignorance, but XDrawRectangles seems
to be a function provided by XLib. Searching (greping),
rather hastily I must admit, through the source for
OroborusOSX, there doesn't seem to be a reference to
XDrawRectangles in resizing windows. (I assume it calls
native OSX api's?) At this point, I gave up on my
search, as it appeared I would need to search through
the XFree cvs source (?), and with no prior experience,
I was too intimidated to continue.
If there is anything missing or something I should try,
please let me know. (I tried searching past bugs, and
didn't find anything, but I could've missed it.)
johnchoi \AT caltech \DOT edu