summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Huddleston Sequoia <jeremyhu@apple.com>2022-06-16 00:10:26 -0700
committerJeremy Huddleston Sequoia <jeremyhu@apple.com>2022-06-16 07:28:57 -0700
commitf1a8f0d215853cd5e925137db9df455402c3c3f8 (patch)
tree2a9ed6f7eb07d8130fd91d313fc9e237ba4e3bb9
parent64b2987c45442244e141f78d4328b051e07ee493 (diff)
downloadxserver-server-1.19-branch.tar.gz
XQuartz: Ensure scroll events are delivered to a single window (not both X11 and AppKit)server-1.19-branch
Fixes: https://github.com/XQuartz/XQuartz/issues/130 Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> (cherry picked from commit 4532b696c644cb7f21e96cf76d3e6b21ccc0e309)
-rw-r--r--hw/xquartz/X11Application.m10
1 files changed, 7 insertions, 3 deletions
diff --git a/hw/xquartz/X11Application.m b/hw/xquartz/X11Application.m
index 3768f7fc1..ec2a13d9e 100644
--- a/hw/xquartz/X11Application.m
+++ b/hw/xquartz/X11Application.m
@@ -315,6 +315,8 @@ message_kit_thread(SEL selector, NSObject *arg)
case NSLeftMouseUp:
case NSRightMouseUp:
case NSOtherMouseUp:
+ case NSScrollWheel:
+
if ([e window] != nil) {
/* Pointer event has an (AppKit) window. Probably something for the kit. */
for_x = NO;
@@ -532,12 +534,14 @@ message_kit_thread(SEL selector, NSObject *arg)
break; /* for gcc */
}
- if (for_appkit) [super sendEvent:e];
+ if (for_appkit) {
+ [super sendEvent:e];
+ }
if (for_x) {
dispatch_async(eventTranslationQueue, ^{
- [self sendX11NSEvent:e];
- });
+ [self sendX11NSEvent:e];
+ });
}
}