mirror of
https://gitlab.gnome.org/GNOME/nautilus
synced 2024-09-29 20:44:17 +00:00
dbus-manager: clarify CreateFolder method
https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/504
This commit is contained in:
parent
7425abd7c0
commit
1b063137ce
|
@ -62,7 +62,8 @@
|
|||
<arg type='a{sv}' name='platform_data' direction='in'/>
|
||||
</method>
|
||||
<method name='CreateFolder'>
|
||||
<arg type='s' name='uri' direction='in'/>
|
||||
<arg type='s' name='parent_uri' direction='in'/>
|
||||
<arg type='s' name='new_folder_name' direction='in'/>
|
||||
<arg type='a{sv}' name='platform_data' direction='in'/>
|
||||
</method>
|
||||
<method name='RenameURI'>
|
||||
|
|
|
@ -164,8 +164,20 @@ create_folder_on_finished (GFile *new_file,
|
|||
}
|
||||
|
||||
static void
|
||||
handle_create_folder_internal (const char *uri,
|
||||
handle_create_folder_internal (const gchar *parent_uri,
|
||||
const gchar *new_folder_name,
|
||||
NautilusFileOperationsDBusData *dbus_data)
|
||||
{
|
||||
g_application_hold (g_application_get_default ());
|
||||
nautilus_file_operations_new_folder (NULL, dbus_data,
|
||||
parent_uri, new_folder_name,
|
||||
create_folder_on_finished, NULL);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
handle_create_folder (NautilusDBusFileOperations *object,
|
||||
GDBusMethodInvocation *invocation,
|
||||
const gchar *uri)
|
||||
{
|
||||
g_autoptr (GFile) file = NULL;
|
||||
g_autoptr (GFile) parent_file = NULL;
|
||||
|
@ -177,18 +189,7 @@ handle_create_folder_internal (const char *uri,
|
|||
parent_file = g_file_get_parent (file);
|
||||
parent_file_uri = g_file_get_uri (parent_file);
|
||||
|
||||
g_application_hold (g_application_get_default ());
|
||||
nautilus_file_operations_new_folder (NULL, dbus_data,
|
||||
parent_file_uri, basename,
|
||||
create_folder_on_finished, NULL);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
handle_create_folder (NautilusDBusFileOperations *object,
|
||||
GDBusMethodInvocation *invocation,
|
||||
const gchar *uri)
|
||||
{
|
||||
handle_create_folder_internal (uri, NULL);
|
||||
handle_create_folder_internal (parent_file_uri, basename, NULL);
|
||||
|
||||
nautilus_dbus_file_operations_complete_create_folder (object, invocation);
|
||||
return TRUE; /* invocation was handled */
|
||||
|
@ -197,14 +198,15 @@ handle_create_folder (NautilusDBusFileOperations *object,
|
|||
static gboolean
|
||||
handle_create_folder2 (NautilusDBusFileOperations2 *object,
|
||||
GDBusMethodInvocation *invocation,
|
||||
const gchar *uri,
|
||||
const gchar *parent_uri,
|
||||
const gchar *new_folder_name,
|
||||
GVariant *platform_data)
|
||||
{
|
||||
g_autoptr (NautilusFileOperationsDBusData) dbus_data = NULL;
|
||||
|
||||
dbus_data = nautilus_file_operations_dbus_data_new (platform_data);
|
||||
|
||||
handle_create_folder_internal (uri, dbus_data);
|
||||
handle_create_folder_internal (parent_uri, new_folder_name, dbus_data);
|
||||
|
||||
nautilus_dbus_file_operations2_complete_create_folder (object, invocation);
|
||||
return TRUE; /* invocation was handled */
|
||||
|
|
Loading…
Reference in a new issue