summaryrefslogtreecommitdiff
path: root/src/trg-torrent-add-dialog.c
diff options
context:
space:
mode:
authorGravatar Alan Fitton <ajf@eth0.org.uk>2011-10-03 07:46:12 +0000
committerGravatar Alan Fitton <ajf@eth0.org.uk>2011-10-03 07:46:12 +0000
commita9780439e066ea76d7b5aa6af66a8a539c59b0cf (patch)
tree5cbde63721e07e7498bf952ac25df2c92139207c /src/trg-torrent-add-dialog.c
parent88499797cc64ae0e563ef978ca2e08f38c4a6051 (diff)
issue 145 - fix my broken regex which was causing filenames to be treated as URLs. issue 141 - patch for showing mime type icons in file list.
Diffstat (limited to 'src/trg-torrent-add-dialog.c')
-rw-r--r--src/trg-torrent-add-dialog.c33
1 files changed, 19 insertions, 14 deletions
diff --git a/src/trg-torrent-add-dialog.c b/src/trg-torrent-add-dialog.c
index 1b7be0b..2d034f8 100644
--- a/src/trg-torrent-add-dialog.c
+++ b/src/trg-torrent-add-dialog.c
@@ -712,23 +712,28 @@ static void trg_torrent_add_dialog_set_filenames(TrgTorrentAddDialog * d,
if (nfiles == 1) {
gchar *file_name = (gchar *) filenames->data;
- gchar *file_name_base = g_path_get_basename(file_name);
- trg_torrent_file *tor_data = trg_parse_torrent_file(file_name);
-
- if (file_name_base) {
- gtk_button_set_label(chooser, file_name_base);
- g_free(file_name_base);
- } else {
+ if (is_url(file_name)) {
gtk_button_set_label(chooser, file_name);
- }
-
- if (!tor_data) {
- torrent_not_parsed_warning(GTK_WINDOW(priv->parent));
gtk_widget_set_sensitive(priv->file_list, FALSE);
+ gtk_widget_set_sensitive(priv->delete_check, FALSE);
} else {
- store_add_node(priv->store, NULL, tor_data->top_node);
- trg_torrent_file_free(tor_data);
- gtk_widget_set_sensitive(priv->file_list, TRUE);
+ gchar *file_name_base = g_path_get_basename(file_name);
+ trg_torrent_file *tor_data = trg_parse_torrent_file(file_name);
+
+ if (file_name_base) {
+ gtk_button_set_label(chooser, file_name_base);
+ g_free(file_name_base);
+ } else {
+ gtk_button_set_label(chooser, file_name);
+ }
+
+ gtk_widget_set_sensitive(priv->file_list, tor_data != NULL);
+ if (!tor_data) {
+ torrent_not_parsed_warning(GTK_WINDOW(priv->parent));
+ } else {
+ store_add_node(priv->store, NULL, tor_data->top_node);
+ trg_torrent_file_free(tor_data);
+ }
}
} else {
gtk_widget_set_sensitive(priv->file_list, FALSE);