Plugin.EmailStore: Actually emit the email-sent signal

Wire up emitting the signal from the controller when it gets notified
of an email being sent.
This commit is contained in:
Michael Gratton 2020-03-21 16:59:01 +11:00 committed by Michael James Gratton
parent 2e623a5b78
commit e7c7326a05
3 changed files with 14 additions and 1 deletions

View file

@ -1472,7 +1472,10 @@ internal class Application.Controller : Geary.BaseObject {
AccountContext? context = this.accounts.get(service.account);
if (context != null) {
//this.notifications.email_sent(context.account, sent);
foreach (NotificationContext plugin in
this.plugins.get_notification_contexts()) {
plugin.email_sent(context.account.information, sent);
}
}
}

View file

@ -207,4 +207,9 @@ internal class Application.EmailStoreFactory : Geary.BaseObject {
return plugin_ids;
}
public Plugin.Email to_plugin_email(Geary.Email engine,
Geary.AccountInformation account) {
return new EmailImpl(engine, account);
}
}

View file

@ -206,6 +206,11 @@ internal class Application.NotificationContext :
this.email_factory.destroy_email_store(this.email);
}
internal void email_sent(Geary.AccountInformation account,
Geary.Email email) {
this.email.email_sent(email_factory.to_plugin_email(email, account));
}
internal void clear_new_messages(Geary.Folder location,
Gee.Set<Geary.App.Conversation>? visible) {
MonitorInformation? info = this.folder_information.get(location);