Call on_configure from on_realize
authorAndy Spencer <andy753421@gmail.com>
Wed, 10 Feb 2010 13:19:14 +0000 (13:19 +0000)
committerAndy Spencer <andy753421@gmail.com>
Wed, 10 Feb 2010 13:19:14 +0000 (13:19 +0000)
src/gis-opengl.c

index 4803168..ba0f913 100644 (file)
@@ -344,21 +344,6 @@ struct RenderLevel {
        GList sorted;
 };
 
-static void on_realize(GisOpenGL *opengl, gpointer _)
-{
-       g_debug("GisOpenGL: on_realize");
-
-       GdkGLContext   *glcontext  = gtk_widget_get_gl_context(GTK_WIDGET(opengl));
-       GdkGLDrawable  *gldrawable = gtk_widget_get_gl_drawable(GTK_WIDGET(opengl));
-       if (!gdk_gl_drawable_gl_begin(gldrawable, glcontext))
-               g_assert_not_reached();
-
-       _set_visuals(opengl);
-       g_mutex_lock(opengl->sphere_lock);
-       roam_sphere_update_errors(opengl->sphere);
-       g_mutex_unlock(opengl->sphere_lock);
-}
-
 static gboolean on_configure(GisOpenGL *opengl, GdkEventConfigure *event, gpointer _)
 {
        g_debug("GisOpenGL: on_configure");
@@ -382,6 +367,19 @@ static gboolean on_configure(GisOpenGL *opengl, GdkEventConfigure *event, gpoint
        return FALSE;
 }
 
+static void on_realize(GisOpenGL *opengl, gpointer _)
+{
+       g_debug("GisOpenGL: on_realize");
+
+       GdkGLContext   *glcontext  = gtk_widget_get_gl_context(GTK_WIDGET(opengl));
+       GdkGLDrawable  *gldrawable = gtk_widget_get_gl_drawable(GTK_WIDGET(opengl));
+       if (!gdk_gl_drawable_gl_begin(gldrawable, glcontext))
+               g_assert_not_reached();
+
+       _set_visuals(opengl);
+       on_configure(opengl, NULL, NULL);
+}
+
 static gboolean _draw_level(gpointer key, gpointer value, gpointer user_data)
 {
        g_debug("GisOpenGL: _draw_level - level=%-4d", (int)key);