diff options
Diffstat (limited to 'src/window-commands.c')
-rw-r--r-- | src/window-commands.c | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/src/window-commands.c b/src/window-commands.c index 5d50f6e05..a4f1ef004 100644 --- a/src/window-commands.c +++ b/src/window-commands.c @@ -276,16 +276,20 @@ window_cmd_file_bookmark_page (EggAction *action, icon = ephy_tab_get_favicon_url (tab); bookmarks = ephy_shell_get_bookmarks (ephy_shell); - new_bookmark = ephy_new_bookmark_new - (bookmarks, GTK_WINDOW (window), location); - ephy_new_bookmark_set_title - (EPHY_NEW_BOOKMARK (new_bookmark), title); - ephy_new_bookmark_set_icon - (EPHY_NEW_BOOKMARK (new_bookmark), icon); - g_signal_connect (G_OBJECT (new_bookmark), "response", - G_CALLBACK (ephy_new_bookmark_response_cb), - NULL); - gtk_widget_show (new_bookmark); + if (ephy_new_bookmark_is_unique (bookmarks, GTK_WINDOW (window), + location)) + { + new_bookmark = ephy_new_bookmark_new + (bookmarks, GTK_WINDOW (window), location); + ephy_new_bookmark_set_title + (EPHY_NEW_BOOKMARK (new_bookmark), title); + ephy_new_bookmark_set_icon + (EPHY_NEW_BOOKMARK (new_bookmark), icon); + g_signal_connect (G_OBJECT (new_bookmark), "response", + G_CALLBACK (ephy_new_bookmark_response_cb), + NULL); + gtk_widget_show (new_bookmark); + } } void |