Matthew D. Fuller wrote:
Ah! This turns out to be the key. It doesn't have to do with the key+button; it has to do with f.exec. Bind it to just Button1, it'll act the same.
Ah, I see!
It appears to be because of the XUngrabPointer() call in the f.exec handler (functions_misc.c:347 in head); if I take that out, I can't trigger it anymore. The similar code in twm (menus.c:1987-94 in their head) doesn't ungrab. That seems to have come in with ctwm 3.5, in 1997. A look at CHANGES doesn't turn up any obvious suspects. The closest may be the added handling of $redirect and $currentworkspace in f.exec's arg; maybe that uncovered some behavior that necessitated the ungrab?
Thanks for investigating! Puh, who could know that they problem they stepped on in 1997 that made them add this ungrab call. .. So currently it's not possible to use f.exec for any kind of mouse button binding, right? f.exec would need to know if the ungrab is neccessary or not but I guess it can't. Do you have any clue why we see the ButtonRelease event only on every second click? Does ctmw remember a button state somehow? -- Dipl.-Inform. Frank Steiner Web: http://www.bio.ifi.lmu.de/~steiner/ Lehrstuhl f. Bioinformatik Mail: http://www.bio.ifi.lmu.de/~steiner/m/ LMU, Amalienstr. 17 Phone: +49 89 2180-4049 80333 Muenchen, Germany Fax: +49 89 2180-99-4049 * Rekursion kann man erst verstehen, wenn man Rekursion verstanden hat. *
