* Removed a duplicated save_state call
[modest] / src / widgets / modest-window-mgr.c
index 4e380f1..fa32586 100644 (file)
@@ -317,12 +317,33 @@ compare_msguids (ModestWindow *win,
 }
 
 
+void
+modest_window_mgr_close_all_windows (ModestWindowMgr *self)
+{
+       ModestWindowMgrPrivate *priv = NULL;
+       GList *wins = NULL;
+       gboolean ret_value = FALSE;
+
+       g_return_if_fail (MODEST_IS_WINDOW_MGR (self));
+       priv = MODEST_WINDOW_MGR_GET_PRIVATE (self);
+       
+       /* delete-event handler already removes window_list item, */
+       /* so no next its required on this loop  */
+       wins = priv->window_list;
+       while (wins) {          
+               g_signal_emit_by_name (G_OBJECT (wins->data), "delete-event", NULL, &ret_value);
+
+               wins = priv->window_list;
+       }
+}
+
+
 gboolean
 modest_window_mgr_find_registered_header (ModestWindowMgr *self, TnyHeader *header,
                                          ModestWindow **win)
 {
-       ModestWindowMgrPrivate *priv;
-       gchar* uid;
+       ModestWindowMgrPrivate *priv = NULL;
+       gchar* uid = NULL;
        gboolean has_header, has_window = FALSE;
        GList *item = NULL;
 
@@ -510,17 +531,11 @@ on_window_destroy (ModestWindow *window,
                                                                                 _("mcen_nc_no_email_message_modified_save_changes"));
                                /* Save to drafts */
                                if (response != GTK_RESPONSE_CANCEL)                            
-                                       modest_ui_actions_on_save_to_drafts (NULL, MODEST_MSG_EDIT_WINDOW (window));
-                               
-                       } 
+                                       modest_ui_actions_on_save_to_drafts (NULL, MODEST_MSG_EDIT_WINDOW (window));                            
+                       }
                }
        }
 
-       /* Save configuration state (TODO: why edit window does not require this function ?) */
-       if (!MODEST_IS_MSG_EDIT_WINDOW (window)) 
-               modest_window_save_state (MODEST_WINDOW(window));
-
-
        /* Unregister window */
        modest_window_mgr_unregister_window (self, window);