Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/sugar/sugar-key-grabber.c
diff options
context:
space:
mode:
authorTomeu Vizoso <tomeu@sugarlabs.org>2009-07-12 12:11:41 (GMT)
committer Tomeu Vizoso <tomeu@sugarlabs.org>2009-07-12 12:11:41 (GMT)
commit8d21a6d884641cebfbefca38bd0112521e5096a4 (patch)
tree5fd3454cff92e869083d537aafece4a959a694e7 /src/sugar/sugar-key-grabber.c
parentd22e6908227e9b950165cf2dc29d436ed2667c27 (diff)
Pass the event time in key events
Diffstat (limited to 'src/sugar/sugar-key-grabber.c')
-rw-r--r--src/sugar/sugar-key-grabber.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/sugar/sugar-key-grabber.c b/src/sugar/sugar-key-grabber.c
index 65476ef..8139ce1 100644
--- a/src/sugar/sugar-key-grabber.c
+++ b/src/sugar/sugar-key-grabber.c
@@ -83,8 +83,9 @@ sugar_key_grabber_class_init(SugarKeyGrabberClass *grabber_class)
G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
G_STRUCT_OFFSET (SugarKeyGrabberClass, key_pressed),
NULL, NULL,
- sugar_marshal_BOOLEAN__UINT_UINT,
- G_TYPE_BOOLEAN, 2,
+ sugar_marshal_BOOLEAN__UINT_UINT_UINT,
+ G_TYPE_BOOLEAN, 3,
+ G_TYPE_UINT,
G_TYPE_UINT,
G_TYPE_UINT);
signals[KEY_RELEASED] = g_signal_new ("key-released",
@@ -92,8 +93,9 @@ sugar_key_grabber_class_init(SugarKeyGrabberClass *grabber_class)
G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
G_STRUCT_OFFSET (SugarKeyGrabberClass, key_released),
NULL, NULL,
- sugar_marshal_BOOLEAN__UINT_UINT,
- G_TYPE_BOOLEAN, 2,
+ sugar_marshal_BOOLEAN__UINT_UINT_UINT,
+ G_TYPE_BOOLEAN, 3,
+ G_TYPE_UINT,
G_TYPE_UINT,
G_TYPE_UINT);
}
@@ -123,7 +125,7 @@ filter_events(GdkXEvent *xevent, GdkEvent *event, gpointer data)
if (xev->type == KeyRelease) {
int return_value;
g_signal_emit (grabber, signals[KEY_RELEASED], 0, xev->xkey.keycode,
- xev->xkey.state, &return_value);
+ xev->xkey.state, xev->xkey.time, &return_value);
if(return_value)
return GDK_FILTER_REMOVE;
}
@@ -131,7 +133,7 @@ filter_events(GdkXEvent *xevent, GdkEvent *event, gpointer data)
if (xev->type == KeyPress) {
int return_value;
g_signal_emit (grabber, signals[KEY_PRESSED], 0, xev->xkey.keycode,
- xev->xkey.state, &return_value);
+ xev->xkey.state, xev->xkey.time, &return_value);
if(return_value)
return GDK_FILTER_REMOVE;
}