On Tue, May 13, 2008 at 10:58 AM, Quinn <[EMAIL PROTECTED]> wrote: > On Tue, May 13, 2008 at 10:18 AM, andrew rader <[EMAIL PROTECTED]> wrote: > > unfortunately, I never got any response (in fact, I was starting to > > even doubt I had ever sent the email :p) > > > > The more sleuthing I do, the more it appears there aren't a lot of > > people that know what compiz is doing :( Most people are content that > > it just works for them... > > > > does anyone have any clues? I'd be grateful for even a link to a > > compiz design doc > > > > > > > > On Tue, May 13, 2008 at 9:32 AM, Shane Bryan <[EMAIL PROTECTED]> wrote: > > > > > > > > > > > > On Mon, Apr 7, 2008 at 10:36 AM, andrew rader <[EMAIL PROTECTED]> > > > wrote: > > > > Hi all, > > > > > > > > I've recently become interesting in how all of the pieces of X/compiz > > > > come together to do what it does, and after going through compiz's > > > > code, I have a few questions that I just can't seem to find any > > > > answers to. > > > > > > > > > > <snip> > > > > > > > first, how does compiz know what geometry to use for the textured > > > > "window" objects? It obviously can't use the width and height of the > > > > window, since opengl's coordinates are going to be much different (ie. > > > > between -1 and 1). I tried looking through the code, but I can't find > > > > anything that appears to convert from X window coords to OpenGL > > > > coords. > > This is just a simple coordinate transform, nothing big, involves > setting the right projection matrix and some internal conversions too >
that's what I was going to guess, but do you know whereabouts in the source I can find this? > > > > > > > > > second, how is the user's input mapped to windows? If my understanding > > > > of compiz being an opengl app is correct, any input will be to the > > > > compiz window rather than the window the user perceives to be active. > > > > Is there a simple way of redirecting these inputs? or does compiz have > > > > to manually map an input event to the correct window? > > > > > > Compiz doesn't need to create its own window, it draws on an > output-only window of the X server itself called the Composite Overlay > Window (or in older X versions onto the root window), and because the > windows are redirected, the server doesn't bother drawing them itself. > This lets compiz handle the drawing, and the server still handles > input (in fact we *can't* redirect input yet, this is why complex > transformed windows are still not easily possible, things like rotated > windows, scaled, etc., though IIRC we are trying to fake it in one of > the plugins) > I knew about the COW, but I didn't realize it didn't steal the inputs. So what you're saying is that since the COW sits above everything, all of the actual windows can be placed where they really are on screen. The inputs will then "fall through" the COW and be grabbed by the correct window below... I hope that's right because it makes perfect sense :) thanks! > > > > > > > Just catching up on this list, and am curious about the same questions. > > > > > > I don't see a response on the list, did you get a private response you > can > > > share with the list, or does someone have links to where to read more > about > > > this? > > > > > > Shane... > > > > > > > > > _______________________________________________ > > compiz mailing list > > compiz@lists.freedesktop.org > > http://lists.freedesktop.org/mailman/listinfo/compiz > > > _______________________________________________ compiz mailing list compiz@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/compiz