* src/maemo/modest-msg-edit-window.c:
authorJose Dapena Paz <jdapena@igalia.com>
Wed, 17 Oct 2007 09:44:50 +0000 (09:44 +0000)
committerJose Dapena Paz <jdapena@igalia.com>
Wed, 17 Oct 2007 09:44:50 +0000 (09:44 +0000)
* Now, on saving to drafts, we unregister the window (with the
  old header) and register it again (with the new header). If
  the window has been destroyed previously, we don't register
  (fixes NB#66687).

pmo-trunk-r3518

src/maemo/modest-msg-edit-window.c

index 026a676..3e00676 100644 (file)
@@ -3217,23 +3217,20 @@ modest_msg_edit_window_set_draft (ModestMsgEditWindow *window,
        ModestWindowMgr *mgr = modest_runtime_get_window_mgr ();
 
        if (priv->draft_msg != NULL) {
-               header = tny_msg_get_header (priv->draft_msg);
-               if (TNY_IS_HEADER (header)) {
-                       modest_window_mgr_unregister_header (mgr, header);
-               }
+               modest_window_mgr_unregister_window (mgr, MODEST_WINDOW (window));
                g_object_unref (priv->draft_msg);
        }
 
        if (draft != NULL) {
                g_object_ref (draft);
                header = tny_msg_get_header (draft);
-               if (TNY_IS_HEADER (header))
-                       modest_window_mgr_register_header (mgr, header);
                if (priv->msg_uid) {
                        g_free (priv->msg_uid);
                        priv->msg_uid = NULL;
                }
                priv->msg_uid = modest_tny_folder_get_header_unique_id (header);
+               if (GTK_WIDGET_REALIZED (window))
+                       modest_window_mgr_register_window (mgr, MODEST_WINDOW (window));
        }
 
        priv->draft_msg = draft;