On Aug 15, 2008, at 05:34, Martin Costabel wrote:
Look at the emulation of button2 via alt-click: If I press alt+some key, I get a KeyPress event with "state 0x2000", but alt+click gives a ButtonPress event with "state 0x0". This is as it should be.
You should not have state 0x2000 with alt. You should have 0x8, and there's no reason the states should be different. I'm not treating the two any differently. Do you have a special ~/.Xmodmap (run 'xmodmap' at the terminal and tell me what it says)? What's your OSX keyboard layout?
For cmd+some key, I get "state 0x10", and cmd+click gives "state 0x10", too, which is wrong. In all previous versions of Apple's or xquartz's X11 up to and including xquartz-2.3.0, it was "state 0x0".
It is correct that up to and including 2.3.0 it was state 0x0, but all those versions had a bug which I'm trying to address, the emulated button click was always a "modifier-release, down, up, modifier press" on the mouse-down. There was no way to "hold" button2 or button3. Yes, those did "release" the modifier, but my reason for not doing this in the beta I just released was that it was more "correct" with respect to the hardware state, was easier to code, and the other way was just as wrong in my mind. As you read in my earlier post, I want to change that so the default is to reset the modifiers, but you have to understand it's not a trivial problem. Consider: cmd-down button1-down # emulated as (cmd-up, button3-down, cmd-down) a-down # this should be cmd-a since command is down a-up button1-up # emulated as (cmd-up, button3-down, cmd-down) versus cmd-down button1-down # emulated as (cmd-up, button3-down, cmd-down) cmd-up a-down # this should be a since command is down a-up button1-up # needs to be emulated as button3-down without cmd-up/ cmd-down This gets even more complicated in the logic once we add in the possibility that l/r modifiers can be differentiated between... so just give me a little while to figure out a clean way to do this. In the mean time, I'm more concerned about why your alt