From de4936d7482f820728efeef338a2041c7a9186d2 Mon Sep 17 00:00:00 2001 From: Jeremy Huddleston Date: Mon, 4 Aug 2008 20:11:45 -0700 Subject: [PATCH] XQuartz: Fixed proper processing of tablet button presses (cherry picked from commit ca0babafa4e9cf1b67ec460655bffe569ac9c3e9) --- hw/xquartz/X11Application.m | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/hw/xquartz/X11Application.m b/hw/xquartz/X11Application.m index c6c9c59ab..bdd075b10 100644 --- a/hw/xquartz/X11Application.m +++ b/hw/xquartz/X11Application.m @@ -861,6 +861,7 @@ static void send_nsevent (NSEventType type, NSEvent *e) { tilt_y = 0; switch (type) { + case NSMouseMoved: ev_button=0; ev_type=MotionNotify; goto check_subtype; case NSLeftMouseDown: ev_button=1; ev_type=ButtonPress; goto check_subtype; case NSOtherMouseDown: ev_button=2; ev_type=ButtonPress; goto check_subtype; case NSRightMouseDown: ev_button=3; ev_type=ButtonPress; goto check_subtype; @@ -872,16 +873,16 @@ static void send_nsevent (NSEventType type, NSEvent *e) { case NSRightMouseDragged: ev_button=3; ev_type=MotionNotify; goto check_subtype; check_subtype: - if ([e subtype] != NSTabletPointEventSubtype) goto handle_mouse; + if ([e subtype] != NSTabletPointEventSubtype) + goto handle_mouse; // fall through to get tablet data case NSTabletPoint: pressure = [e pressure]; tilt_x = [e tilt].x; tilt_y = [e tilt].y; + goto handle_mouse; // fall through to normal mouse handling - case NSMouseMoved: ev_button=0; ev_type=MotionNotify; goto handle_mouse; - handle_mouse: DarwinSendPointerEvents(ev_type, ev_button, pointer_x, pointer_y, pressure, tilt_x, tilt_y);