/* Try to copy the theme file to the user's screensaver directory. * If a file with the given name already exists, the error will be * caught later and the copy re-attempted with a random value * appended to the filename. **/ static void copy_theme_dialog_copy_next (CopyThemeDialog *dialog) { GFile *file, *destination; gchar *basename, *full_basename; if (copy_finished (dialog)) { g_signal_emit (G_OBJECT (dialog), signals[COMPLETE], 0, NULL); return; } file = G_FILE (dialog->priv->file->data); basename = (gchar *) (dialog->priv->basename->data); g_return_if_fail (file != NULL); g_return_if_fail (basename != NULL); full_basename = g_strdup_printf ("%s.desktop", basename); destination = g_file_get_child (dialog->priv->theme_dir, full_basename); g_free (full_basename); g_file_copy_async (file, destination, G_FILE_COPY_NONE, G_PRIORITY_DEFAULT, dialog->priv->cancellable, NULL, NULL, single_copy_complete, dialog); }
static gboolean timeout_display_dialog (gpointer data) { if (IS_COPY_THEME_DIALOG (data)) { CopyThemeDialog *dialog = COPY_THEME_DIALOG (data); if (!copy_finished (dialog)) { gtk_widget_show (GTK_WIDGET (dialog)); g_signal_connect (dialog, "response", G_CALLBACK (copy_theme_dialog_response), dialog); } } return FALSE; }
void NRemoteFSBrowser::reply_copy_request ( common::SignalArgs & node ){ emit copy_finished(); }