X-Git-Url: http://pileus.org/git/?p=grits;a=blobdiff_plain;f=src%2Fgrits-opengl.c;h=7b5697e4b19b529a36f28921c4f6f642114e1670;hp=a39fbda1733f87d8f55c9c8b1b354b00cabeb8ba;hb=76547a2ce3597d4d6e99d8057503be1ab957dad6;hpb=50c81f020bac4d5b1db57071e2bb434aac087a81 diff --git a/src/grits-opengl.c b/src/grits-opengl.c index a39fbda..7b5697e 100644 --- a/src/grits-opengl.c +++ b/src/grits-opengl.c @@ -210,6 +210,8 @@ static gboolean on_expose(GritsOpenGL *opengl, GdkEventExpose *event, gpointer _ { g_debug("GritsOpenGL: on_expose - begin"); + gtk_gl_begin(GTK_WIDGET(opengl)); + glClear(GL_COLOR_BUFFER_BIT); _set_visuals(opengl); @@ -551,7 +553,8 @@ static void grits_opengl_init(GritsOpenGL *opengl) opengl->sphere = roam_sphere_new(opengl); opengl->sphere_lock = g_mutex_new(); gtk_gl_enable(GTK_WIDGET(opengl)); - g_signal_connect(opengl, "realize", G_CALLBACK(on_realize), NULL); + gtk_widget_add_events(GTK_WIDGET(opengl), GDK_KEY_PRESS_MASK); + g_signal_connect(opengl, "map", G_CALLBACK(on_realize), NULL); } static void grits_opengl_dispose(GObject *_opengl) {