diff -r 3efe0210e27e -r 86d729874ff4 ui/gtk/draw_cairo.c --- a/ui/gtk/draw_cairo.c Thu Jan 21 20:40:14 2016 +0100 +++ b/ui/gtk/draw_cairo.c Sat Jan 23 18:37:30 2016 +0100 @@ -59,8 +59,13 @@ g.widget = w; g.cr = gdk_cairo_create(w->window); - UiExposeEvent *event = data; - event->callback(&g.g, event->document, event->data); + UiDrawEvent *event = data; + UiEvent ev; + ev.obj = event->obj; + ev.window = event->obj->window; + ev.document = event->obj->ctx->document; + + event->callback(&ev, &g.g, event->userdata); return FALSE; } @@ -77,7 +82,7 @@ #else g_signal_connect(G_OBJECT(widget), "expose_event", - G_CALLBACK(ui_drawingarea_expose), + G_CALLBACK(ui_canvas_expose), event); #endif }