* Source/x11/XGServerEvent.m (processEvent:): do not send event if

disabled menu mouse button was released.
This commit is contained in:
Sergii Stoian 2019-04-11 13:15:09 +03:00
parent 7981c3e41c
commit 59b1f51e5f
2 changed files with 22 additions and 12 deletions

View file

@ -1,9 +1,16 @@
2019-04-11 Sergii Stoian <stoyan255@gmail.com>
* Source/x11/XGServerEvent.m (processEvent:): do not send event if
disabled menu mouse button was released.
2019-04-11 Sergii Stoian <stoyan255@ukr.net>
* Source/x11/XGServerEvent.m (initializeMouse): new method. Calls -mouseOptionsChanged:
and setups observer for defaults changes.
(mouseOptionsChanged:): new method. Read mouse properties from user defaults.
(processEvent:): respect mouse options on ButtonPress and ButtonRelease events.
* Source/x11/XGServerEvent.m (initializeMouse): new method. Calls
-mouseOptionsChanged: and setups observer for defaults changes.
(mouseOptionsChanged:): new method. Read mouse properties from user
defaults.
(processEvent:): respect mouse options on ButtonPress and
ButtonRelease events.
* Source/x11/XGServer.m (dealloc): remove notification observer.

View file

@ -476,7 +476,7 @@ posixFileDescriptor: (NSPosixFileDescriptor*)fileDescriptor
}
}
else if (xEvent.xbutton.button == generic.rMouse
&& generic.rMouse != 0)
&& generic.rMouse != 0)
{
if (swapMouseButtons)
{
@ -490,34 +490,34 @@ posixFileDescriptor: (NSPosixFileDescriptor*)fileDescriptor
}
}
else if (xEvent.xbutton.button == generic.mMouse
&& generic.mMouse != 0)
&& generic.mMouse != 0)
{
eventType = NSOtherMouseDown;
buttonNumber = generic.mMouse;
}
else if (xEvent.xbutton.button == generic.upMouse
&& generic.upMouse != 0)
&& generic.upMouse != 0)
{
deltaY = 1. * mouseScrollMultiplier;
eventType = NSScrollWheel;
buttonNumber = generic.upMouse;
}
else if (xEvent.xbutton.button == generic.downMouse
&& generic.downMouse != 0)
&& generic.downMouse != 0)
{
deltaY = -1. * mouseScrollMultiplier;
eventType = NSScrollWheel;
buttonNumber = generic.downMouse;
}
else if (xEvent.xbutton.button == generic.scrollLeftMouse
&& generic.scrollLeftMouse != 0)
&& generic.scrollLeftMouse != 0)
{
deltaX = -1. * mouseScrollMultiplier;
eventType = NSScrollWheel;
buttonNumber = generic.scrollLeftMouse;
}
else if (xEvent.xbutton.button == generic.scrollRightMouse
&& generic.scrollRightMouse != 0)
&& generic.scrollRightMouse != 0)
{
deltaX = 1. * mouseScrollMultiplier;
eventType = NSScrollWheel;
@ -599,7 +599,7 @@ posixFileDescriptor: (NSPosixFileDescriptor*)fileDescriptor
}
}
else if (xEvent.xbutton.button == generic.rMouse
&& generic.rMouse != 0)
&& generic.rMouse != 0)
{
if (swapMouseButtons)
{
@ -613,7 +613,7 @@ posixFileDescriptor: (NSPosixFileDescriptor*)fileDescriptor
}
}
else if (xEvent.xbutton.button == generic.mMouse
&& generic.mMouse != 0)
&& generic.mMouse != 0)
{
eventType = NSOtherMouseUp;
buttonNumber = generic.mMouse;
@ -623,6 +623,9 @@ posixFileDescriptor: (NSPosixFileDescriptor*)fileDescriptor
// we ignore release of scrollUp or scrollDown
break; /* Unknown button */
}
if (menuButtonEnabled == NO && eventType == menuMouseButton)
break; // disabled menu button was released
eventFlags = process_modifier_flags(xEvent.xbutton.state);
// if pointer is grabbed use grab window