diff options
author | Peter Åstrand <astrand@cendio.se> | 2005-03-10 14:45:22 +0000 |
---|---|---|
committer | Peter Åstrand <astrand@cendio.se> | 2005-03-10 14:45:22 +0000 |
commit | 0aafa76cbe84310b564ddb84ce0e0c081961d775 (patch) | |
tree | 3c0a6f8b9c93b60dc69a712fea734d7fdcbe558c /xc | |
parent | 5e7af746d12167956076fb4df60485779af2846f (diff) | |
download | tigervnc-0aafa76cbe84310b564ddb84ce0e0c081961d775.tar.gz tigervnc-0aafa76cbe84310b564ddb84ce0e0c081961d775.zip |
Do not translate mouse buttons according to the server map; treat VNC mouse buttons as logical buttons. This solves the problem with LeftHanded+LeftHanded=RightHanded, and is also much more in line with the keyboard handling: After all, keysyms are logical.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@239 3789f03b-4d11-0410-bbf8-ca57d06f2519
Diffstat (limited to 'xc')
-rw-r--r-- | xc/programs/Xserver/vnc/XserverDesktop.cc | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/xc/programs/Xserver/vnc/XserverDesktop.cc b/xc/programs/Xserver/vnc/XserverDesktop.cc index 9b5294ee..f53caec0 100644 --- a/xc/programs/Xserver/vnc/XserverDesktop.cc +++ b/xc/programs/Xserver/vnc/XserverDesktop.cc @@ -614,14 +614,9 @@ void XserverDesktop::pointerEvent(const Point& pos, rdr::U8 buttonMask) for (int i = 0; i < 5; i++) { if ((buttonMask ^ oldButtonMask) & (1<<i)) { -#ifdef XINPUT - // God knows why but some idiot decided to conditionally move the pointer - // mapping out of DIX, so we guess here that if XINPUT is defined we have - // to do it ourselves... - ev.u.u.detail = ((DeviceIntPtr)dev)->button->map[i + 1]; -#else + // Do not use the pointer mapping. Treat VNC buttons as logical + // buttons. ev.u.u.detail = i + 1; -#endif ev.u.u.type = (buttonMask & (1<<i)) ? ButtonPress : ButtonRelease; (*dev->processInputProc)(&ev, (DeviceIntPtr)dev, 1); } |