summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
Diffstat (limited to 'gtk')
-rw-r--r--gtk/gtk_scaffolding.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/gtk/gtk_scaffolding.c b/gtk/gtk_scaffolding.c
index c767f5414..46287222b 100644
--- a/gtk/gtk_scaffolding.c
+++ b/gtk/gtk_scaffolding.c
@@ -423,17 +423,23 @@ MULTIHANDLER(newwindow)
MULTIHANDLER(newtab)
{
struct browser_window *bw = gui_window_get_browser_window(g->top_level);
- const char *url = gtk_entry_get_text(GTK_ENTRY(g->url_bar));
if (option_new_blank) {
- browser_window_create(0, bw, NULL, false, true);
+ browser_window_create(NULL, bw, NULL, false, true);
GtkWidget *window = gtk_notebook_get_nth_page(g->notebook, -1);
gtk_widget_modify_bg(window, GTK_STATE_NORMAL, &((GdkColor)
{0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF}));
- }
-
- else
+ } else {
+ const char *url = option_homepage_url;
+
+ if ((url != NULL) && (url[0] == '\0'))
+ url = NULL;
+
+ if (url == NULL)
+ url = NETSURF_HOMEPAGE;
+
browser_window_create(url, bw, NULL, false, true);
+ }
return TRUE;
}