This test program woks for me on windows and linux with gtk+-2.4.9. But maybe I misunderstand your problem? - the dialog does not appear on the taskbar - when the dialog is open the main window button does not work (so you can never have more than one dialog) - the dialog is always above the main window ------------------- #include <gtk/gtk.h> static void dialog_button_click( GtkWidget *widget, GtkWidget *dialog ) { gtk_widget_destroy( dialog ); } static void window_button_click( GtkWidget *widget, GtkWidget *parent_window ) { GtkWidget *dialog; GtkWidget *button; dialog = gtk_window_new( GTK_WINDOW_TOPLEVEL ); button = gtk_button_new_with_label( "done" ); g_signal_connect( G_OBJECT( button ), "clicked", G_CALLBACK( dialog_button_click ), dialog ); gtk_container_add( GTK_CONTAINER( dialog ), button ); gtk_window_set_modal( GTK_WINDOW( dialog ), TRUE ); gtk_window_set_transient_for( GTK_WINDOW( dialog ), GTK_WINDOW( parent_window ) ); gtk_window_set_position( GTK_WINDOW( dialog ), GTK_WIN_POS_CENTER_ON_PARENT ); gtk_widget_show_all( dialog ); } int main( int argc, char **argv ) { GtkWidget *window; GtkWidget *button; gtk_init (&argc, &argv); window = gtk_window_new( GTK_WINDOW_TOPLEVEL ); button = gtk_button_new_with_label( "click to open dialog" ); g_signal_connect( G_OBJECT( button ), "clicked", G_CALLBACK( window_button_click ), window ); gtk_container_add( GTK_CONTAINER( window ), button ); gtk_widget_show_all( window ); gtk_main(); return( 0 ); } ---------------- _______________________________________________ gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list