aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/xwidget.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/xwidget.c b/src/xwidget.c
index 6d82263ff80..a47d6c12dbc 100644
--- a/src/xwidget.c
+++ b/src/xwidget.c
@@ -433,7 +433,15 @@ xwidget_osr_button_callback ( GtkWidget *widget,
433 GdkEvent *event, 433 GdkEvent *event,
434 gpointer user_data) 434 gpointer user_data)
435{ 435{
436 printf ("button callback\n",); 436 gdouble x, y;
437 struct xwidget* xw = (struct xwidget*) g_object_get_data (G_OBJECT (widget), XG_XWIDGET);
438 x = ((GdkEventButton*)event)->x;
439 y = ((GdkEventButton*)event)->y;
440
441 printf ("button callback %d %d\n",x,y);
442 GdkEventButton* eventcopy = gdk_event_copy(event);
443 eventcopy->window = gtk_widget_get_window(xw->widget_osr);
444 gtk_main_do_event(eventcopy); //TODO this will leak events. they should be deallocated later
437} 445}
438 446
439int xwidget_view_index=0; 447int xwidget_view_index=0;
@@ -538,12 +546,17 @@ xwidget_init_view (
538 gtk_widget_add_events(xv->widget, 546 gtk_widget_add_events(xv->widget,
539 GDK_BUTTON_PRESS_MASK 547 GDK_BUTTON_PRESS_MASK
540 | GDK_BUTTON_RELEASE_MASK 548 | GDK_BUTTON_RELEASE_MASK
549 | GDK_POINTER_MOTION_MASK
541 ); 550 );
542 551
543 g_signal_connect (G_OBJECT ( xv->widget), "draw", 552 g_signal_connect (G_OBJECT ( xv->widget), "draw",
544 G_CALLBACK (xwidget_osr_draw_callback), NULL); 553 G_CALLBACK (xwidget_osr_draw_callback), NULL);
545 554
546 g_signal_connect (G_OBJECT ( xv->widget), "buton-press-event", 555 g_signal_connect (G_OBJECT ( xv->widget), "button-press-event",
556 G_CALLBACK (xwidget_osr_button_callback), NULL);
557 g_signal_connect (G_OBJECT ( xv->widget), "button-release-event",
558 G_CALLBACK (xwidget_osr_button_callback), NULL);
559 g_signal_connect (G_OBJECT ( xv->widget), "motion-notify-event",
547 G_CALLBACK (xwidget_osr_button_callback), NULL); 560 G_CALLBACK (xwidget_osr_button_callback), NULL);
548 561
549 562