|
Lines 129-137
Link Here
|
| 129 |
gtk_dialog_add_button(GTK_DIALOG(file_box), |
129 |
gtk_dialog_add_button(GTK_DIALOG(file_box), |
| 130 |
okbutton, GTK_RESPONSE_ACCEPT); |
130 |
okbutton, GTK_RESPONSE_ACCEPT); |
| 131 |
|
131 |
|
| 132 |
if (starting_dir) |
132 |
if (starting_dir) { |
|
|
133 |
char *local_starting_dir = g_filename_from_utf8(starting_dir, -1, NULL, NULL, NULL); |
| 133 |
gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER (file_box), |
134 |
gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER (file_box), |
| 134 |
starting_dir); |
135 |
local_starting_dir); |
|
|
136 |
g_free(local_starting_dir); |
| 137 |
} |
| 135 |
|
138 |
|
| 136 |
gtk_window_set_modal(GTK_WINDOW(file_box), TRUE); |
139 |
gtk_window_set_modal(GTK_WINDOW(file_box), TRUE); |
| 137 |
/* |
140 |
/* |
|
Lines 172-178
Link Here
|
| 172 |
/* nope, a local file name */ |
175 |
/* nope, a local file name */ |
| 173 |
internal_name = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER (file_box)); |
176 |
internal_name = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER (file_box)); |
| 174 |
} |
177 |
} |
| 175 |
file_name = g_strdup(internal_name); |
178 |
if (!g_utf8_validate(internal_name, -1, NULL)) { |
|
|
179 |
file_name = g_filename_to_utf8(internal_name, -1, NULL, NULL, NULL); |
| 180 |
if(!file_name) |
| 181 |
g_warning("Some characters in the filename is neither UTF-8 nor your local encoding\n"); |
| 182 |
} |
| 183 |
if(!file_name) |
| 184 |
file_name = g_strdup(internal_name); |
| 176 |
} |
185 |
} |
| 177 |
gtk_widget_destroy(GTK_WIDGET(file_box)); |
186 |
gtk_widget_destroy(GTK_WIDGET(file_box)); |
| 178 |
LEAVE("%s", file_name ? file_name : "(null)"); |
187 |
LEAVE("%s", file_name ? file_name : "(null)"); |