Bug 1788 - Redirected windows damaged on move
Summary: Redirected windows damaged on move
Status: CLOSED DUPLICATE of bug 5275
Alias: None
Product: xorg
Classification: Unclassified
Component: Server/General (show other bugs)
Version: unspecified
Hardware: x86 (IA32) Linux (All)
: high normal
Assignee: Keith Packard
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-11-05 20:17 UTC by Owen Taylor
Modified: 2011-10-15 17:21 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Non-working attempt at a fix (2.19 KB, patch)
2004-11-12 14:55 UTC, Owen Taylor
no flags Details | Splinter Review

Description Owen Taylor 2004-11-05 20:17:15 UTC
When you move a window redirected via the Composite extension, the
entire window is reported as damaged.

This happens because:

 compMoveWindow calls
 miMoveWindow calls
 compCopyWindow

Which was apparently written for the resizing case not the moving case;
in the case where cw->pOldPixmap is NULL, it falls through to the
non-redirected case. Not immediately clear how to fix to; perhaps
pScreen->CopyWindow needs to be temporarily redirected before calling
miMoveWindow or something.
Comment 1 Owen Taylor 2004-11-12 14:54:40 UTC
I did some experiments with removing the DamageDamageRegion call in
compositeCopyWindow, and it doesn't quite work - the builtin compositor
doesn't properly recompose the moved window onto the parent window.

(I turned out not to have a working real kdrive based server on the
system, so I was doing testing with Xfake and lightpipe redirecting
the root window to my main display. So all testing results should
be taken with a big grain of salt.)

I'll attach a version of my patch where I tried calling DamageDamageRegion
on the parent window... that didn't help, but perhaps is closer to the
right fix.



Comment 2 Owen Taylor 2004-11-12 14:55:11 UTC
Created attachment 1299 [details] [review]
Non-working attempt at a fix
Comment 3 Michel Dänzer 2008-02-26 02:13:30 UTC

*** This bug has been marked as a duplicate of bug 5275 ***


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.