pathbar: show webdav directories
Currently pathbar is not updated for webdav directories and shows previous non-webdav location pathbar. The problem seems to be fact that last(?) parent is not local file in which case g_file_query_info_async returns "The specified location is not mounted" error.
This commit is contained in:
@@ -1497,6 +1497,20 @@ gtk_path_bar_set_file_finish (struct SetFileInfo *info,
|
||||
g_free (info);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
is_local (GFile *file)
|
||||
{
|
||||
gchar *path;
|
||||
|
||||
path = g_file_get_path (file);
|
||||
if (path == NULL)
|
||||
return FALSE;
|
||||
|
||||
g_free (path);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void
|
||||
gtk_path_bar_get_info_callback (GCancellable *cancellable,
|
||||
GFileInfo *info,
|
||||
@@ -1558,6 +1572,8 @@ gtk_path_bar_get_info_callback (GCancellable *cancellable,
|
||||
}
|
||||
|
||||
file_info->parent_file = g_file_get_parent (file_info->file);
|
||||
if (!is_local (file_info->parent_file))
|
||||
g_clear_object (&file_info->parent_file);
|
||||
|
||||
/* Recurse asynchronously */
|
||||
priv->get_info_cancellable = _gtk_file_system_get_info (priv->file_system,
|
||||
|
||||
Reference in New Issue
Block a user