diff options
author | Rob Kendrick <rjek@netsurf-browser.org> | 2010-12-05 11:10:31 +0000 |
---|---|---|
committer | Rob Kendrick <rjek@netsurf-browser.org> | 2010-12-05 11:10:31 +0000 |
commit | 78e5ba66f3037eb9c0841b8bd660f92d557e2931 (patch) | |
tree | b6a6bff8456b533cdfdbff94ccf63664b3c31cf1 /gtk/gtk_scaffolding.c | |
parent | ab704ba7a75be135717f71028a64185501ec0934 (diff) | |
download | netsurf-78e5ba66f3037eb9c0841b8bd660f92d557e2931.tar.gz netsurf-78e5ba66f3037eb9c0841b8bd660f92d557e2931.tar.bz2 |
Remove a small amount of putridness from GTK full save implemention. Still needs to cope gracefully with the target directory already existing and offer to overwrite.
svn path=/trunk/netsurf/; revision=10995
Diffstat (limited to 'gtk/gtk_scaffolding.c')
-rw-r--r-- | gtk/gtk_scaffolding.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/gtk/gtk_scaffolding.c b/gtk/gtk_scaffolding.c index e970a60af..d3ad329d3 100644 --- a/gtk/gtk_scaffolding.c +++ b/gtk/gtk_scaffolding.c @@ -476,13 +476,13 @@ MULTIHANDLER(savepage) messages_get("gtkcompleteSave"), g->window, GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - GTK_STOCK_APPLY, GTK_RESPONSE_ACCEPT, + GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL); DIR *d; char *path; url_func_result res; GtkFileFilter *filter = gtk_file_filter_new(); - gtk_file_filter_set_name(filter, "directory"); + gtk_file_filter_set_name(filter, "Directories"); gtk_file_filter_add_custom(filter, GTK_FILE_FILTER_FILENAME, nsgtk_filter_directory, NULL, NULL); gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(fc), filter); @@ -505,16 +505,21 @@ MULTIHANDLER(savepage) gtk_file_chooser_set_do_overwrite_confirmation(GTK_FILE_CHOOSER(fc), TRUE); - if (gtk_dialog_run(GTK_DIALOG(fc)) != GTK_RESPONSE_ACCEPT) + if (gtk_dialog_run(GTK_DIALOG(fc)) != GTK_RESPONSE_ACCEPT) { + gtk_widget_destroy(fc); return TRUE; + } + path = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(fc)); d = opendir(path); if (d == NULL) { - printf("d NULL\n"); + LOG(("Unable to open directory %s for complete save: %s", path, + strerror(errno))); if (errno == ENOTDIR) warn_user("NoDirError", path); else warn_user("gtkFileError", path); + gtk_widget_destroy(fc); g_free(path); return TRUE; } |