Make the various fill_*_event functions consistent
This commit is contained in:
committed by
Alexander Larsson
parent
4c01ca7ddd
commit
25b311bac3
@ -1430,7 +1430,10 @@ fill_button_event (GdkWindow *window,
|
|||||||
event->button.state = state;
|
event->button.state = state;
|
||||||
event->button.button = button;
|
event->button.button = button;
|
||||||
event->button.device = _gdk_display->core_pointer;
|
event->button.device = _gdk_display->core_pointer;
|
||||||
convert_window_coordinates_to_root (window, x, y,
|
|
||||||
|
convert_window_coordinates_to_root (window,
|
||||||
|
event->button.x,
|
||||||
|
event->button.y,
|
||||||
&event->button.x_root,
|
&event->button.x_root,
|
||||||
&event->button.y_root);
|
&event->button.y_root);
|
||||||
}
|
}
|
||||||
@ -1442,26 +1445,23 @@ fill_motion_event (GdkWindow *window,
|
|||||||
gint x,
|
gint x,
|
||||||
gint y)
|
gint y)
|
||||||
{
|
{
|
||||||
GdkEventType type;
|
GdkModifierType state;
|
||||||
GdkModifierType state = 0;
|
|
||||||
|
state = get_keyboard_modifiers_from_ns_event (nsevent);
|
||||||
|
|
||||||
switch ([nsevent type])
|
switch ([nsevent type])
|
||||||
{
|
{
|
||||||
case NSLeftMouseDragged:
|
case NSLeftMouseDragged:
|
||||||
case NSRightMouseDragged:
|
case NSRightMouseDragged:
|
||||||
case NSOtherMouseDragged:
|
case NSOtherMouseDragged:
|
||||||
state = get_mouse_button_modifiers_from_ns_event (nsevent);
|
state |= get_mouse_button_modifiers_from_ns_event (nsevent);
|
||||||
/* Fall through */
|
break;
|
||||||
case NSMouseMoved:
|
|
||||||
type = GDK_MOTION_NOTIFY;
|
case NSMouseMoved:
|
||||||
break;
|
break;
|
||||||
default:
|
|
||||||
g_assert_not_reached ();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
state |= get_keyboard_modifiers_from_ns_event (nsevent);
|
event->any.type = GDK_MOTION_NOTIFY;
|
||||||
|
|
||||||
event->any.type = type;
|
|
||||||
event->motion.window = window;
|
event->motion.window = window;
|
||||||
event->motion.time = get_time_from_ns_event (nsevent);
|
event->motion.time = get_time_from_ns_event (nsevent);
|
||||||
event->motion.x = x;
|
event->motion.x = x;
|
||||||
@ -1470,32 +1470,43 @@ fill_motion_event (GdkWindow *window,
|
|||||||
event->motion.state = state;
|
event->motion.state = state;
|
||||||
event->motion.is_hint = FALSE;
|
event->motion.is_hint = FALSE;
|
||||||
event->motion.device = _gdk_display->core_pointer;
|
event->motion.device = _gdk_display->core_pointer;
|
||||||
convert_window_coordinates_to_root (window, x, y,
|
|
||||||
&event->motion.x_root, &event->motion.y_root);
|
convert_window_coordinates_to_root (window,
|
||||||
|
event->motion.x,
|
||||||
|
event->motion.y,
|
||||||
|
&event->motion.x_root,
|
||||||
|
&event->motion.y_root);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
fill_scroll_event (GdkWindow *window,
|
fill_scroll_event (GdkWindow *window,
|
||||||
GdkEvent *event,
|
GdkEvent *event,
|
||||||
NSEvent *nsevent,
|
NSEvent *nsevent,
|
||||||
|
gint x,
|
||||||
|
gint y,
|
||||||
GdkScrollDirection direction)
|
GdkScrollDirection direction)
|
||||||
{
|
{
|
||||||
|
GdkWindowObject *private;
|
||||||
NSPoint point;
|
NSPoint point;
|
||||||
|
|
||||||
|
private = GDK_WINDOW_OBJECT (window);
|
||||||
|
|
||||||
|
point = [nsevent locationInWindow];
|
||||||
|
|
||||||
event->any.type = GDK_SCROLL;
|
event->any.type = GDK_SCROLL;
|
||||||
event->scroll.window = window;
|
event->scroll.window = window;
|
||||||
event->scroll.time = get_time_from_ns_event (nsevent);
|
event->scroll.time = get_time_from_ns_event (nsevent);
|
||||||
|
event->scroll.x = x;
|
||||||
point = [nsevent locationInWindow];
|
event->scroll.y = y;
|
||||||
event->scroll.x = point.x;
|
|
||||||
event->scroll.y = point.y;
|
|
||||||
event->scroll.state = get_keyboard_modifiers_from_ns_event (nsevent);
|
event->scroll.state = get_keyboard_modifiers_from_ns_event (nsevent);
|
||||||
convert_window_coordinates_to_root (window, event->scroll.x, event->scroll.y,
|
|
||||||
&event->scroll.x_root,
|
|
||||||
&event->scroll.y_root);
|
|
||||||
|
|
||||||
event->scroll.direction = direction;
|
event->scroll.direction = direction;
|
||||||
event->scroll.device = _gdk_display->core_pointer;
|
event->scroll.device = _gdk_display->core_pointer;
|
||||||
|
|
||||||
|
convert_window_coordinates_to_root (window,
|
||||||
|
event->scroll.x,
|
||||||
|
event->scroll.y,
|
||||||
|
&event->scroll.x_root,
|
||||||
|
&event->scroll.y_root);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -1508,17 +1519,15 @@ fill_key_event (GdkWindow *window,
|
|||||||
gchar buf[7];
|
gchar buf[7];
|
||||||
gunichar c = 0;
|
gunichar c = 0;
|
||||||
|
|
||||||
event->any.type = type;
|
|
||||||
|
|
||||||
priv = (GdkEventPrivate *) event;
|
priv = (GdkEventPrivate *) event;
|
||||||
priv->windowing_data = [nsevent retain];
|
priv->windowing_data = [nsevent retain];
|
||||||
|
|
||||||
|
event->any.type = type;
|
||||||
event->key.window = window;
|
event->key.window = window;
|
||||||
event->key.time = get_time_from_ns_event (nsevent);
|
event->key.time = get_time_from_ns_event (nsevent);
|
||||||
event->key.state = get_keyboard_modifiers_from_ns_event (nsevent);
|
event->key.state = get_keyboard_modifiers_from_ns_event (nsevent);
|
||||||
event->key.hardware_keycode = [nsevent keyCode];
|
event->key.hardware_keycode = [nsevent keyCode];
|
||||||
event->key.group = ([nsevent modifierFlags] & NSAlternateKeyMask) ? 1 : 0;
|
event->key.group = ([nsevent modifierFlags] & NSAlternateKeyMask) ? 1 : 0;
|
||||||
|
|
||||||
event->key.keyval = GDK_VoidSymbol;
|
event->key.keyval = GDK_VoidSymbol;
|
||||||
|
|
||||||
gdk_keymap_translate_keyboard_state (NULL,
|
gdk_keymap_translate_keyboard_state (NULL,
|
||||||
|
|||||||
Reference in New Issue
Block a user