forked from AuroraMiddleware/gtk
Allow resolving absolute paths even if there is no base_folder
This lets us do proper completion in GtkFileChooserEntry even when no base folder has been set. Completion for relative paths won't work, as usual, as expected.
This commit is contained in:
parent
1af579b1a2
commit
ae42f286bb
@ -1563,7 +1563,6 @@ refresh_current_folder_and_file_part (GtkFileChooserEntry *chooser_entry,
|
||||
|
||||
error = NULL;
|
||||
if (!chooser_entry->file_system ||
|
||||
!chooser_entry->base_folder ||
|
||||
!_gtk_file_system_parse (chooser_entry->file_system,
|
||||
chooser_entry->base_folder, text,
|
||||
&folder_file, &file_part, &error))
|
||||
|
@ -708,9 +708,22 @@ _gtk_file_system_parse (GtkFileSystem *file_system,
|
||||
if (str[0] == '~' || g_path_is_absolute (str) || is_uri)
|
||||
file = g_file_parse_name (str);
|
||||
else
|
||||
file = g_file_resolve_relative_path (base_file, str);
|
||||
{
|
||||
if (base_file)
|
||||
file = g_file_resolve_relative_path (base_file, str);
|
||||
else
|
||||
{
|
||||
*folder = NULL;
|
||||
*file_part = NULL;
|
||||
g_set_error (error,
|
||||
GTK_FILE_CHOOSER_ERROR,
|
||||
GTK_FILE_CHOOSER_ERROR_BAD_FILENAME,
|
||||
_("Invalid path"));
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
if (g_file_equal (base_file, file))
|
||||
if (base_file && g_file_equal (base_file, file))
|
||||
{
|
||||
/* this is when user types '.', could be the
|
||||
* beginning of a hidden file, ./ or ../
|
||||
|
Loading…
Reference in New Issue
Block a user