* src/maemo/easysetup/modest-easysetup-country-combo-box.c:
[modest] / src / modest-main.c
index 3ed8076..52ad08b 100644 (file)
@@ -57,7 +57,7 @@ main (int argc, char *argv[])
                g_thread_init (NULL);
 
        gdk_threads_init ();
-       gdk_threads_enter ();
+       gdk_threads_enter (); /* CHECKED */
 
        if (!gtk_init_check(&argc, &argv)) {
                g_printerr ("modest: failed to initialize gtk\n");
@@ -71,8 +71,14 @@ main (int argc, char *argv[])
                goto cleanup;
        }
 
-       win = modest_main_window_new ();
-
+       /* this will create & register the window */
+       win = modest_window_mgr_get_main_window (modest_runtime_get_window_mgr());
+       if (!win) {
+               g_printerr ("modest: failed to get main window instance\n");
+               retval = 1;
+               goto cleanup;
+       }
+       
        /* Usually, we only show the UI when we get the "top_application" D-Bus method.
         * This allows modest to start via D-Bus activation to provide a service, 
         * without showing the UI.
@@ -81,22 +87,13 @@ main (int argc, char *argv[])
         */
        if (show_ui_without_top_application_method)
                gtk_widget_show_all (GTK_WIDGET(win));
-               
-       if (!win) {
-               g_printerr ("modest: failed to create main window\n");
-               retval = 1;
-               goto cleanup;
-       }
        
-       modest_window_mgr_register_window (modest_runtime_get_window_mgr(), 
-                                          win);
-       g_object_unref (win);
        
        gtk_main ();    
        retval = 0;
 
 cleanup:
-       gdk_threads_leave ();
+       gdk_threads_leave (); /* CHECKED */
 
        if (!modest_init_uninit ()) {
                g_printerr ("modest: modest_init_uninit failed\n");