diff options
Diffstat (limited to 'src/fe-gtk/urlgrab.c')
-rw-r--r-- | src/fe-gtk/urlgrab.c | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/fe-gtk/urlgrab.c b/src/fe-gtk/urlgrab.c index be62239e..cefa51c8 100644 --- a/src/fe-gtk/urlgrab.c +++ b/src/fe-gtk/urlgrab.c @@ -49,13 +49,22 @@ url_treeview_url_clicked_cb (GtkWidget *view, GdkEventButton *event, { GtkTreeIter iter; gchar *url; + GtkTreeSelection *sel; + GtkTreePath *path; + GtkTreeView *tree = GTK_TREE_VIEW (view); - if (!event || - !gtkutil_treeview_get_selected (GTK_TREE_VIEW (view), &iter, + if (!event || !gtk_tree_view_get_path_at_pos (tree, event->x, event->y, &path, 0, 0, 0)) + return FALSE; + + /* select what they right-clicked on */ + sel = gtk_tree_view_get_selection (tree); + gtk_tree_selection_unselect_all (sel); + gtk_tree_selection_select_path (sel, path); + gtk_tree_path_free (path); + + if (!gtkutil_treeview_get_selected (GTK_TREE_VIEW (view), &iter, URL_COLUMN, &url, -1)) - { return FALSE; - } switch (event->button) { |