Index: gtk/rgchangeswindow.h =================================================================== --- gtk/rgchangeswindow.h (revision 1323) +++ gtk/rgchangeswindow.h (working copy) @@ -47,13 +47,13 @@ public: RGChangesWindow(RGWindow *win); - bool showAndConfirm(RPackageLister *lister, - vector &kept, - vector &toInstall, - vector &toReInstall, - vector &toUpgrade, - vector &toRemove, - vector &toDowngrade); + bool confirm(RPackageLister *lister, + vector &kept, + vector &toInstall, + vector &toReInstall, + vector &toUpgrade, + vector &toRemove, + vector &toDowngrade); }; #endif Index: gtk/rgmainwindow.cc =================================================================== --- gtk/rgmainwindow.cc (revision 1323) +++ gtk/rgmainwindow.cc (working copy) @@ -521,11 +521,11 @@ if (ask && _lister->getStateChanges(state, toKeep, toInstall, toReInstall, toUpgrade, toRemove, toDowngrade, exclude)) { - RGChangesWindow *chng; - // show a summary of what's gonna happen - chng = new RGChangesWindow(this); - if (!chng->showAndConfirm(_lister, toKeep, toInstall, toReInstall, - toUpgrade, toRemove, toDowngrade)) { + RGChangesWindow changes(this); + changes.confirm(_lister, toKeep, toInstall, toReInstall, + toUpgrade, toRemove, toDowngrade); + int res = gtk_dialog_run(GTK_DIALOG(changes.window())); + if( res == GTK_RESPONSE_CANCEL) { // canceled operation _lister->restoreState(state); // if a operation was canceled, we discard all errors from this @@ -533,7 +533,6 @@ _error->Discard(); changed = false; } - delete chng; } return changed; Index: gtk/rgchangeswindow.cc =================================================================== --- gtk/rgchangeswindow.cc (revision 1323) +++ gtk/rgchangeswindow.cc (working copy) @@ -88,7 +88,7 @@ -bool RGChangesWindow::showAndConfirm(RPackageLister *lister, +bool RGChangesWindow::confirm(RPackageLister *lister, vector &kept, vector &toInstall, vector &toReInstall, @@ -174,9 +174,9 @@ gtk_tree_view_expand_all(GTK_TREE_VIEW(_tree)); - show(); - gtk_window_set_modal(GTK_WINDOW(_win), TRUE); - gtk_main(); +// show(); +// gtk_window_set_modal(GTK_WINDOW(_win), TRUE); +// gtk_main(); - return _confirmed; +// return _confirmed; } Index: gtk/window_changes.glade =================================================================== --- gtk/window_changes.glade (revision 1323) +++ gtk/window_changes.glade (working copy) @@ -15,6 +15,11 @@ True False synaptic_mini.xpm + True + False + False + GDK_WINDOW_TYPE_HINT_DIALOG + GDK_GRAVITY_NORTH_WEST False @@ -37,8 +42,8 @@ gtk-cancel True GTK_RELIEF_NORMAL + True -6 - @@ -48,8 +53,8 @@ True True GTK_RELIEF_NORMAL + True -5 - @@ -58,6 +63,10 @@ 0.5 0 0 + 0 + 0 + 0 + 0