From ce36f153ce6796e5ebd815bc6bd041cb99c4f580 Mon Sep 17 00:00:00 2001 From: Christian Persch Date: Mon, 29 Mar 2004 14:58:11 +0000 Subject: Fix opening in new tabs when there is no existing window. Fixes bug 2004-03-29 Christian Persch * src/bookmarks/ephy-bookmarks-editor.c: (cmd_open_bookmarks_in_tabs): Fix opening in new tabs when there is no existing window. Fixes bug #138343. --- ChangeLog | 8 ++++++++ src/bookmarks/ephy-bookmarks-editor.c | 15 +++++++++++++-- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 40d83f044..0ae96ac2f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2004-03-29 Christian Persch + + * src/bookmarks/ephy-bookmarks-editor.c: + (cmd_open_bookmarks_in_tabs): + + Fix opening in new tabs when there is no existing window. + Fixes bug #138343. + 2004-03-23 Christian Persch * src/ephy-go-action.c: (connect_proxy), (disconnect_proxy), diff --git a/src/bookmarks/ephy-bookmarks-editor.c b/src/bookmarks/ephy-bookmarks-editor.c index 732467a0a..b96432ad8 100644 --- a/src/bookmarks/ephy-bookmarks-editor.c +++ b/src/bookmarks/ephy-bookmarks-editor.c @@ -379,13 +379,24 @@ cmd_open_bookmarks_in_tabs (GtkAction *action, for (l = selection; l; l = l->next) { EphyNode *node = l->data; + EphyTab *new_tab; const char *location; location = ephy_node_get_property_string (node, EPHY_NODE_BMK_PROP_LOCATION); - ephy_shell_new_tab (ephy_shell, window, NULL, location, - EPHY_NEW_TAB_OPEN_PAGE | EPHY_NEW_TAB_IN_EXISTING_WINDOW); + new_tab = ephy_shell_new_tab (ephy_shell, window, NULL, location, + EPHY_NEW_TAB_OPEN_PAGE | + EPHY_NEW_TAB_IN_EXISTING_WINDOW); + /* if there was no target window, a new one was opened. Get it + * from the new tab so we open the remaining links in the + * same window. See bug 138343. + */ + if (window == NULL) + { + window = EPHY_WINDOW + (gtk_widget_get_toplevel (GTK_WIDGET (new_tab))); + } } g_list_free (selection); -- cgit v1.2.3