Visuals / config question
Troy Yee
troystoy at shaw.ca
Fri May 13 07:24:01 PDT 2005
Not sure where this question is most properly asked but hopefully
someone on this list can point me in the right direction if this
isn't the correct place.
I am moving a legacy application to Linux with xorg server. The legacy
app uses an 8-bit PseudoColor overlay visual with transparency and an
8-bit PseudoColor visual for image 'underlay'. The Linux box has
an nVidia Quadro FX 3400 card and is using the latest nVidia driver.
When Overlay and CIOverlay are enabled, the server offers several
24-bit TrueColor and DirectColor visuals that are not overlays and
several 8-bit PseudoColor visuals as overlays.
MaxCmapsOfScreen() reports 1. The default visual is 24-bit TrueColor.
Problem 1:
I have no problem getting the overlay working. I can't seem to get
the 'underlay' working using the DirectColor visual (the application
uses read/write color cells). Even though I can create a colormap
for the visual and allocate colors, the window is rendered using the
colors from the default colormap. I tried using XSetWMColormapWindows()
but that didn't seem to have an effect (using KDE WM).
Q: Is there a way to configure the server to offer 8-bit PseudoColor
as a visual that is not an overlay (without giving up 24-bit
TrueColor/DirectColor)? Even if I do this, will I still see
the same problem as I'm having with the 24-bit DirectColor
visual?
Q: What downside would I see if I set the DirectColor visual to be the
default? I'm expecting to do some relatively high end OpenGL rendering
on this machine after I get things ported.
Problem 2:
In my first attempts I actually used a PseudoColor overlay visual with
transparency for the overlay and a PseudoColor overlay visual without
transparency for the 'underlay'. When a window using the visual with
transparency is stacked on top of a window using the visual without
transparency, the transparent areas of the top window 'burn through'
the window below it regardless of what colors are being used in
the lower window. I expected to see whatever was drawn in the lower
window but I see the desktop (or a lower window that is not using
an overlay visual).
Q: Is this expected behaviour? If not, is it a driver problem or
is it related to the X-server?
Any answers or pointers to answers are appreciated.
Thanks,
Troy.
More information about the xorg
mailing list