* src/maemo/modest-address-book.c:
[modest] / src / modest-main.c
index 3ed8076..498fc4d 100644 (file)
@@ -45,7 +45,6 @@ main (int argc, char *argv[])
         * command line.: */
        gboolean show_ui_without_top_application_method = FALSE;
        if (argc >= 2) {
-               printf ("DEBUG: %s: argv[1]=%s\n", __FUNCTION__, argv[1]);
                if (strcmp (argv[1], "showui") == 0)
                        show_ui_without_top_application_method = TRUE;
        }
@@ -57,7 +56,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 +70,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,30 +86,19 @@ 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");
                retval = 1;
        }
 
-       g_debug ("closing modest with retval %d", retval);
-
        return retval;
 }