GNOME Bugzilla – Bug 599792
Anjal composer's Send button doesn't work after pressed Save to Drafts button
Last modified: 2009-11-06 08:49:35 UTC
This bug is first reported at Anjal Bugzilla: http://bugzilla.moblin.org/show_bug.cgi?id=6107 Write a new email, press "save draft" button first then press "send", mail cannot be sent, no warning message. This is due to Anjal's composer widget is not visible, and being destroyed by save_draft_done().
Created attachment 146356 [details] [review] Patch to Evolution gnome-2-28 This is due to an old hack that hiding a composer means we're closing it so save_draft_done() destroys the composer after saved draft. But in Anjal, the composer widget is always hidden (since the editor is reparented to the tab), and will be wrongly destroyed by save_draft_done() when you clicked "Save Draft" button. This patch improved the old hack, by adding a new API e_msg_composer_request_close() that can be used to request closing a composer. Internally, composer->priv->application_exiting is used to store this exiting status. So by this we no longer use a composer's visibility to check whether we're to close it. When you no longer need a composer after saving draft, call e_msg_composer_request_close() before sending the save-draft signal.
Created attachment 146357 [details] [review] Patch to Anjal And the patch to Anjal.
Seems fine to me Yan. But not that, we need to see how to fix this for Evo 3.0. I will be starting porting Anjal to 3.0 later this month I guess. Commit them to master and anjal-0-1 branch. Evo patches to just gnome-2-28. Check if these are valid for master of Evolution, if so commit there also. We can fix all of Anjal later on.
I'm pushing it to gnome-2-28. But my patch changes API (adding a new func e_msg_composer_request_close()), is this OK for the 2-28 branch?
Its ok.
Comment on attachment 146356 [details] [review] Patch to Evolution gnome-2-28 gnome-2-28 evolution patch committed.
Created attachment 147080 [details] [review] Patch for Evolution master branch I've ported the patch to evolution master branch, please review. The major change from the patch for 2.28 is that e_msg_composer_is_exiting() (removed by 983bea9) has to be bring back, which is needed Anjal.
Matthew, this patch has to bring back e_msg_composer_is_exiting(), which was removed in 983bea9 by you. It's still needed by Anjal.
Looks okay for the time being.
Thank you Matthew, I'm committing it to master.
Comment on attachment 146357 [details] [review] Patch to Anjal Anjal patch committed to both master and anjal-0-1.