comparison src/macterm.c @ 76437:d29bfdf8ae75

[USE_CARBON_EVENTS] (mac_handle_mouse_event): Ignore mouse wheel movement on title bar or tool bar.
author YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
date Sat, 10 Mar 2007 06:25:53 +0000
parents fc4f77227fc8
children 12069a316614 91bf6e05918b
comparison
equal deleted inserted replaced
76436:abf6e5660200 76437:d29bfdf8ae75
9986 typeMouseWheelAxis, NULL, 9986 typeMouseWheelAxis, NULL,
9987 sizeof (EventMouseWheelAxis), NULL, &axis); 9987 sizeof (EventMouseWheelAxis), NULL, &axis);
9988 if (err != noErr || axis != kEventMouseWheelAxisY) 9988 if (err != noErr || axis != kEventMouseWheelAxisY)
9989 break; 9989 break;
9990 9990
9991 err = GetEventParameter (event, kEventParamMouseLocation,
9992 typeQDPoint, NULL, sizeof (Point),
9993 NULL, &point);
9994 if (err != noErr)
9995 break;
9996
9997 SetPortWindowPort (wp);
9998 GlobalToLocal (&point);
9999 if (point.h < 0 || point.v < 0
10000 || EQ (window_from_coordinates (f, point.h, point.v, 0, 0, 0, 1),
10001 f->tool_bar_window))
10002 break;
10003
9991 err = GetEventParameter (event, kEventParamMouseWheelDelta, 10004 err = GetEventParameter (event, kEventParamMouseWheelDelta,
9992 typeSInt32, NULL, sizeof (SInt32), 10005 typeSInt32, NULL, sizeof (SInt32),
9993 NULL, &delta); 10006 NULL, &delta);
9994 if (err != noErr) 10007 if (err != noErr)
9995 break; 10008 break;
9996 err = GetEventParameter (event, kEventParamMouseLocation, 10009
9997 typeQDPoint, NULL, sizeof (Point),
9998 NULL, &point);
9999 if (err != noErr)
10000 break;
10001 read_socket_inev->kind = WHEEL_EVENT; 10010 read_socket_inev->kind = WHEEL_EVENT;
10002 read_socket_inev->code = 0; 10011 read_socket_inev->code = 0;
10003 read_socket_inev->modifiers = 10012 read_socket_inev->modifiers =
10004 (mac_event_to_emacs_modifiers (event) 10013 (mac_event_to_emacs_modifiers (event)
10005 | ((delta < 0) ? down_modifier : up_modifier)); 10014 | ((delta < 0) ? down_modifier : up_modifier));
10006 SetPortWindowPort (wp);
10007 GlobalToLocal (&point);
10008 XSETINT (read_socket_inev->x, point.h); 10015 XSETINT (read_socket_inev->x, point.h);
10009 XSETINT (read_socket_inev->y, point.v); 10016 XSETINT (read_socket_inev->y, point.v);
10010 XSETFRAME (read_socket_inev->frame_or_window, f); 10017 XSETFRAME (read_socket_inev->frame_or_window, f);
10011 10018
10012 return noErr; 10019 return noErr;