aboutsummaryrefslogtreecommitdiffstats
path: root/src/window-commands.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/window-commands.c')
-rw-r--r--src/window-commands.c24
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