aboutsummaryrefslogtreecommitdiffstats
path: root/src/ephy-window.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ephy-window.c')
-rw-r--r--src/ephy-window.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/ephy-window.c b/src/ephy-window.c
index 649c9ded3..c66d1f6ed 100644
--- a/src/ephy-window.c
+++ b/src/ephy-window.c
@@ -367,13 +367,24 @@ ephy_window_selection_received_cb (GtkWidget *widget,
guint time, EphyWindow *window)
{
EphyTab *tab;
+ const char *location;
if (selection_data->length <= 0 || selection_data->data == NULL)
return;
tab = ephy_window_get_active_tab (window);
- ephy_shell_new_tab (ephy_shell, window, tab,
- selection_data->data, 0);
+ location = ephy_tab_get_location(tab);
+
+ /* If this tab is not empty... */
+ if (location != NULL && strcmp (location, "about:blank") != 0)
+ {
+ ephy_shell_new_tab (ephy_shell, window, tab,
+ selection_data->data, 0);
+ }
+ else
+ {
+ ephy_embed_load_url (ephy_tab_get_embed (tab), selection_data->data);
+ }
}
static void