diff --git a/glade/mainWindow.glade b/glade/mainWindow.glade index 1d2024c..6fb9e29 100644 --- a/glade/mainWindow.glade +++ b/glade/mainWindow.glade @@ -494,6 +494,7 @@ False + center True @@ -543,7 +544,17 @@ - + + True + False + Preferences + False + True + close: + + + + diff --git a/src/mainwindow.c b/src/mainwindow.c index 07d3dff..928afd5 100644 --- a/src/mainwindow.c +++ b/src/mainwindow.c @@ -432,10 +432,12 @@ static void mainWindow_init_to_default(struct mainWindow *mainWindow) */ void mainWindow_renderer_set(struct mainWindow *mainWindow, enum renderer_mode state) { + if (mainWindow->renderer == state) + return; + if (state == RENDERER_HTML) { if (!mainWindow->webkitView) { mainWindow->webkitView = webkit_web_view_new(); - webkit_web_view_load_html_string(WEBKIT_WEB_VIEW(mainWindow->webkitView), "", ""); gtk_widget_show(mainWindow->webkitView); mainWindow->webkitScrollArea = gtk_scrolled_window_new(NULL, NULL); @@ -464,7 +466,6 @@ static void mainWindow_settings_combo_changed(GtkComboBox *widget, gpointer user else if (!strcmp(gtk_combo_box_get_active_id(GTK_COMBO_BOX(mainWindow->settingsDialog.comboDisplayMode)), "html")) mainWindow_renderer_set(mainWindow, RENDERER_HTML); - mainWindow_entrySelected(NULL, user_data); } @@ -564,6 +565,8 @@ struct mainWindow *mainWindow_new() mainWindow->time_earliest = 0; mainWindow->time_latest = 0; + mainWindow->renderer = RENDERER_NONE; + gtk_builder_connect_signals(builder, NULL); g_object_unref(G_OBJECT(builder)); diff --git a/src/mainwindow.h b/src/mainwindow.h index fb53982..2853f30 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -16,6 +16,7 @@ enum { }; enum renderer_mode { + RENDERER_NONE = -1, RENDERER_TEXT = 0, RENDERER_BASIC, RENDERER_HTML