summaryrefslogtreecommitdiff
path: root/src/nautilus-object-window.c
diff options
context:
space:
mode:
authorMike Engber <engber@src.gnome.org>2000-09-01 22:13:20 +0000
committerMike Engber <engber@src.gnome.org>2000-09-01 22:13:20 +0000
commitb79cbe1f209f4fb3fcf62f101e1c65ee62f22c10 (patch)
treec04aacefca36a54994abc72b48101f7984369914 /src/nautilus-object-window.c
parenta329e7ef8e5e292630e6633e4f1e8e8546f5c5a2 (diff)
downloadnautilus-b79cbe1f209f4fb3fcf62f101e1c65ee62f22c10.tar.gz
Removed our quitting logic from nautilus-application (where it was tied to
Removed our quitting logic from nautilus-application (where it was tied to nautilus-window closing) and added a more general mechanism in main.c - by which you can register any gtk object to keep the main event loop alive while the object is around. This, in turn, fixed a problem with the first-time-druid not causing nautilus to quit when it was cancel via the close box (bug 2211) and also a problem with nautilus quitting before you had a chance to see an error dialog (bug 1871). Also, added nautilus_main_event_loop_quit as the preferred way to cause nautilus to quit (as opposed to gtk_main_quit) * src/nautilus-application.c: (nautilus_application_startup), (nautilus_application_close_desktop), (nautilus_application_destroyed_window): * src/nautilus-application.h: * src/nautilus-first-time-druid.c: (druid_finished), (nautilus_first_time_druid_show): * src/nautilus-main.c: (nautilus_main_is_event_loop_needed), (nautilus_main_event_loop_unregister), (nautilus_main_event_loop_register), (nautilus_main_is_event_loop_mainstay), (nautilus_main_event_loop_quit), (main): * src/nautilus-main.h: * src/nautilus-shell.c: (corba_quit), (corba_restart): * src/nautilus-window-manage-views.c: (nautilus_window_end_location_change_callback): * src/nautilus-window.c: (nautilus_window_initialize):
Diffstat (limited to 'src/nautilus-object-window.c')
-rw-r--r--src/nautilus-object-window.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/nautilus-object-window.c b/src/nautilus-object-window.c
index d459cc46e..c57c1e743 100644
--- a/src/nautilus-object-window.c
+++ b/src/nautilus-object-window.c
@@ -30,6 +30,7 @@
#include <config.h>
#include "nautilus-window-private.h"
+#include "nautilus-main.h"
#include "nautilus-application.h"
#include "nautilus-bookmarks-window.h"
#include "nautilus-sidebar.h"
@@ -150,6 +151,9 @@ nautilus_window_initialize (NautilusWindow *window)
nautilus_preferences_add_callback (NAUTILUS_PREFERENCES_SIDEBAR_PANELS_NAMESPACE,
sidebar_panels_changed_callback,
window);
+
+ /* Keep the main event loop alive as long as the window exists */
+ nautilus_main_event_loop_register (GTK_OBJECT (window));
}
static gboolean