X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;ds=sidebyside;f=clutter-gtk%2Fgtk-clutter-embed.c;h=b64bbf71eb808478447a21e887c793b444531e13;hb=c10b3d46e24d505162b9c4504115a7757cd23b16;hp=cc1ce5f85ecda73f846a47227d78aabb47aa7c86;hpb=8cfe32563058c9a268252fe07200f1945dc6181d;p=clutter-gtk diff --git a/clutter-gtk/gtk-clutter-embed.c b/clutter-gtk/gtk-clutter-embed.c index cc1ce5f..b64bbf7 100644 --- a/clutter-gtk/gtk-clutter-embed.c +++ b/clutter-gtk/gtk-clutter-embed.c @@ -338,6 +338,31 @@ gtk_clutter_embed_focus_out (GtkWidget *widget, return FALSE; } +static gboolean +gtk_clutter_embed_scroll_event (GtkWidget *widget, + GdkEventScroll *event) +{ + GtkClutterEmbedPrivate *priv = GTK_CLUTTER_EMBED (widget)->priv; + + ClutterEvent cevent = { 0, }; + + if (event->type == GDK_SCROLL) + cevent.type = cevent.scroll.type = CLUTTER_SCROLL; + else + return FALSE; + + cevent.any.stage = CLUTTER_STAGE (priv->stage); + cevent.scroll.x = (gint) event->x; + cevent.scroll.y = (gint) event->y; + cevent.scroll.time = event->time; + cevent.scroll.direction = event->direction; + cevent.scroll.modifier_state = event->state; + + clutter_do_event (&cevent); + + return FALSE; +} + static void gtk_clutter_embed_class_init (GtkClutterEmbedClass *klass) { @@ -360,6 +385,7 @@ gtk_clutter_embed_class_init (GtkClutterEmbedClass *klass) widget_class->expose_event = gtk_clutter_embed_expose_event; widget_class->map_event = gtk_clutter_embed_map_event; widget_class->focus_out_event = gtk_clutter_embed_focus_out; + widget_class->scroll_event = gtk_clutter_embed_scroll_event; } static void