GList *window_list;
ModestWindow *main_window;
- GtkDialog *easysetup_dialog;
+ GtkDialog *modal_dialog;
gboolean fullscreen_mode;
priv->window_list = NULL;
priv->main_window = NULL;
priv->fullscreen_mode = FALSE;
- priv->easysetup_dialog = NULL;
+ priv->modal_dialog = NULL;
priv->preregistered_uids = NULL;
priv->viewer_handlers = NULL;
}
- if (priv->easysetup_dialog) {
- g_warning ("%s: forgot to destroy an easysetup dialog somewhere",
+ if (priv->modal_dialog) {
+ g_warning ("%s: forgot to destroy a modal dialog somewhere",
__FUNCTION__);
- gtk_widget_destroy (GTK_WIDGET(priv->easysetup_dialog));
- priv->easysetup_dialog = NULL;
+ gtk_widget_destroy (GTK_WIDGET(priv->modal_dialog));
+ priv->modal_dialog = NULL;
}
/* Do not unref priv->main_window because it does not hold a
}
+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;
_("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);
gpointer value,
gpointer user_data)
{
- gulong *handler_id;
-
- handler_id = (gulong *) value;
- g_signal_handler_disconnect (G_OBJECT (key), *handler_id);
+ guint handler_id;
+ handler_id = GPOINTER_TO_UINT(value);
+
+ if (key && G_IS_OBJECT(key))
+ g_signal_handler_disconnect (G_OBJECT (key), handler_id);
}
GtkDialog*
-modest_window_mgr_get_easysetup_dialog (ModestWindowMgr *self)
+modest_window_mgr_get_modal_dialog (ModestWindowMgr *self)
{
ModestWindowMgrPrivate *priv;
g_return_val_if_fail (MODEST_IS_WINDOW_MGR (self), NULL);
priv = MODEST_WINDOW_MGR_GET_PRIVATE (self);
- return priv->easysetup_dialog;
+ return priv->modal_dialog;
}
GtkDialog*
-modest_window_mgr_set_easysetup_dialog (ModestWindowMgr *self, GtkDialog *dialog)
+modest_window_mgr_set_modal_dialog (ModestWindowMgr *self, GtkDialog *dialog)
{
ModestWindowMgrPrivate *priv;
g_return_val_if_fail (MODEST_IS_WINDOW_MGR (self), NULL);
priv = MODEST_WINDOW_MGR_GET_PRIVATE (self);
- return priv->easysetup_dialog = dialog;
+ return priv->modal_dialog = dialog;
}