Shape extension and xcompmgr
Eeri Kask
Eeri.Kask at inf.tu-dresden.de
Sat Aug 16 12:51:59 PDT 2008
Hello guys,
Being somewhat stuck with the small program attached I manage to produce
defected X server painting (screenshot included as well) if xcompmgr is
running in the background so I wanted here to verify if this is a
generally known issue (I tested the following on pentium-4 and sparc-64
with different/unrelated graphics hardware/drivers).
In short, this small program creates a shape-extension based transparent
window one can look through; but as this window is resized (esp. making
smaller) there remain visible painting defects on the screen. I can
verify this phenomenon running several window managers (each one I
tested); further, this behaviour can be demonstrated most easily if the
resizing is setup in 'outline' (and not in 'opaque') mode. In opaque
mode this effect is not that apparent at the first glance.
To my present experimental findings it seems the X server is missing one
window configure request in order to do the painting correctly, so if
after resizing one somehow causes the window manager to issue and send
one final configure request to the server, these painting defects don't
appear. In opqaue mode if looking very closely one can detect the last
painting is missing so the right/bottom edge usually is falsely shifted
about one pixel (and it is generally harder to observe as the server
usually receives a configure request for each mouse motion event).
The attached program has a snippet '#if 0' at the end: in the '0'
variant I get the defects on the left half of the screenshot (which
shows xcompmgr shadow window remainings very clearly), in the '1' mode
(which generates the missing dummy configuration request) the window is
painted without defects but the uncovered root window does not get
cleaned up.
Without xcompmgr there are no issues with this small program.
I am running X server which reports
XServerVendor(): 'The X.Org Foundation'
XVendorRelease(): 10300000
and then
Shape extension version 1.1
Render extension version 0.10
Composite extension version 0.4
Damage extension version 1.1
Fixes extension version 4.0
(The best I hope is my understanding of the usage of the shape extension
appears to be not correct and the program has a bug.) :-)
Greetings,
Eeri Kask
-------------- next part --------------
A non-text attachment was scrubbed...
Name: shape-defects.png
Type: image/png
Size: 146300 bytes
Desc: not available
URL: <http://lists.x.org/archives/xorg/attachments/20080816/2e401876/attachment.png>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: window.c
URL: <http://lists.x.org/archives/xorg/attachments/20080816/2e401876/attachment.c>
More information about the xorg
mailing list