static void
action_connect_to_server_callback (GtkAction *action,
                                   gpointer user_data)
{
    NautilusWindow *window = NAUTILUS_WINDOW (user_data);
    GtkWidget *dialog;
    GFile *location;
    location = nautilus_window_get_location (window);
    dialog = nautilus_connect_server_dialog_new (window, location);
    if (location) {
        g_object_unref (location);
    }

    gtk_widget_show (dialog);
}
Example #2
0
GtkWidget *
nautilus_application_connect_server (NautilusApplication *application,
				     NautilusWindow      *window)
{
	GtkWidget *dialog;

	dialog = application->priv->connect_server_window;

	if (dialog == NULL) {
		dialog = nautilus_connect_server_dialog_new (window);
		g_signal_connect (dialog, "response", G_CALLBACK (on_connect_server_response), application);
		application->priv->connect_server_window = GTK_WIDGET (dialog);

		g_object_add_weak_pointer (G_OBJECT (dialog),
					   (gpointer *) &application->priv->connect_server_window);
	}

	gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (window));
	gtk_window_set_screen (GTK_WINDOW (dialog), gtk_window_get_screen (GTK_WINDOW (window)));
	gtk_window_present (GTK_WINDOW (dialog));

	return dialog;
}