Hi all,<div><br></div><div>I've sort-of worked it out (I think??) but would still like suggestions on this. </div><div>The penguins -are- being drawn using the clip mask correctly onto the window of my choice.</div><div>
<br></div><div>The problem was that each penguin comprises a little animation (penguin is moving), and the expose event was only being sent once per animation, not after every single frame of the animation. Since the penguins move only a few pixels per animations (say 20 or so) it looked like the clip mask just wasn't working.</div>
<div><br></div><div>I've modified the code to send an expose event after each frame of the animation is drawn (so truly after each penguin is drawn), but now (as expected) it looks very very flickery -- every cycle we get a XClearArea where the old penguin was, an XExposeEvent where the old penguin was, and a XCopyArea of the next frame of the animation.</div>
<div><br></div><div>Can anyone think of an alternative way to do this (have the penguins walk over a screen of my choosing and restore said window after they've passed through, without too much flickering?) -- perhaps I can copy the relevant bit of background as the background of the penguin pixmap itself, although I think I'd need to send an XExposeEvent before I can grab the background?</div>
<div><br></div><div>[So close! Soon I shall have penguins taking over my windows! SOON! bahaha]</div><div>cheers</div><div>Amy</div>