Re: mc, mdi, mem About this list




> From: Matthias Ettrich <ettrich@troll.no>
> Resent-From: wm-spec-list@gnome.org
> Date: Wed, 4 Aug 1999 15:50:12 +0200
> To: wm-spec-list@gnome.org
> Subject: Re: mc, mdi, mem       About this list
> -----
> >
> > Yup.  This is what replaying events is all about: a WM (or other
> application)
> > can get an event, decide what to do with it, and then cause it to be
> > replayed to others transparently.  This is how click to focus is supposed
> > to be implemented, for example (at least when I talked to Raster last fall,
> > E didn't do it this way, because he hadn't understood what the facility
> > was intended for; if you don't do it this way, you can have race conditions
> > and events can go to the wrong place).
> > 				- Jim
> 
> When kwm worked exactly this way, people reported problems using certain Motif
> application ( for example Java awt). Motif wasn't able to interpret double
> clicks correctly when the events have been replayed. I used a passive grab and
> called XAllowEvents with ReplayPointer. Other toolkits had no problem with
> that, neither Qt nor GTK. As far as I remember I tried with both, CurrentTime
> and the appropriate time stamps.
> 
> Any idea why that could be? 

No, I don't...  When I sat down with Raster and drew his attention to 
it, we certainly found events being replayed in other window managers 
(I had forgotten exactly what the mechanism was called, though I knew 
it was there, so we went hunting for a few minutes to find it, and then 
looked it up in the documentation; it had been too long since I worried 
about this).  So it is certainly something a number of window managers 
do routinely.

> Do you consider it save that a click to focus WM
> has a passive grab over its decoration window the whole time?

I would think so, though since it is the window manager's window, I don't
know that a passive grab should actually be necessary.

> 
> I'd like to do it this way, since it's a clean and proper solution.
> 

Yup.  That's what it is intended for.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]