diff --git a/src/ghtml-webkit.c b/src/ghtml-webkit.c index 1ef4519..dde8492 100644 --- a/src/ghtml-webkit.c +++ b/src/ghtml-webkit.c @@ -347,18 +347,14 @@ static WebKitWebView * _on_create_web_view(WebKitWebView * view, { WebKitWebView * ret; Surfer * surfer; - Surfer * copy; surfer = g_object_get_data(G_OBJECT(data), "surfer"); - if((copy = surfer_new_copy(surfer)) == NULL) + if((surfer = surfer_new(NULL)) == NULL) return NULL; - /* FIXME many things: - * - this is a bit ugly (showing and hiding) - * - we may not want history etc to be copied - * - it loads the current URL first */ - ret = g_object_get_data(G_OBJECT(surfer_get_view(copy)), "view"); + /* FIXME we may want the history to be copied (and then more) */ + ret = g_object_get_data(G_OBJECT(surfer_get_view(surfer)), "view"); g_signal_connect(G_OBJECT(ret), "web-view-ready", G_CALLBACK( - _on_web_view_ready), surfer_get_view(copy)); + _on_web_view_ready), surfer_get_view(surfer)); return ret; } diff --git a/src/surfer.c b/src/surfer.c index fd32c4e..032d5b0 100644 --- a/src/surfer.c +++ b/src/surfer.c @@ -284,7 +284,7 @@ Surfer * _new_do(char const * url) /* notebook */ surfer->notebook = gtk_notebook_new(); gtk_notebook_set_show_border(GTK_NOTEBOOK(surfer->notebook), FALSE); - gtk_notebook_set_show_tabs(GTK_NOTEBOOK(surfer->notebook), FALSE); + surfer_open_tab(surfer, NULL); g_signal_connect_swapped(G_OBJECT(surfer->notebook), "switch-page", G_CALLBACK(on_notebook_switch_page), surfer); gtk_box_pack_start(GTK_BOX(vbox), surfer->notebook, TRUE, TRUE, 0); @@ -316,7 +316,7 @@ static gboolean _new_idle(gpointer data) { SurferIdle * si = data; - surfer_open_tab(si->surfer, si->url); + surfer_open(si->surfer, si->url); free(si->url); free(si); return FALSE; @@ -800,6 +800,9 @@ void surfer_open_tab(Surfer * surfer, char const * url) if(gtk_notebook_get_n_pages(GTK_NOTEBOOK(surfer->notebook)) > 1) gtk_notebook_set_show_tabs(GTK_NOTEBOOK(surfer->notebook), TRUE); + else + gtk_notebook_set_show_tabs(GTK_NOTEBOOK(surfer->notebook), + FALSE); gtk_widget_show_all(widget); }