Make remote folder synchronisation a top-level API method

Add Geary.Folder::synchronise_remote method to allow clients to
explicitly check for new mail in a folder. Move code from
ImapEngine.AccountSynchronizer as the basic implementation, but also
ensure pending replay queue notifications are processed before the
process is complete.
This commit is contained in:
Michael Gratton 2019-08-08 23:00:42 +10:00 committed by Michael James Gratton
parent ee11d0d8ec
commit 6871c1cd90
5 changed files with 53 additions and 27 deletions

View file

@ -78,6 +78,11 @@ public class Geary.MockFolder : Folder, MockObject {
throw new EngineError.UNSUPPORTED("Mock method");
}
public override async void synchronise_remote(GLib.Cancellable? cancellable)
throws GLib.Error {
void_call("synchronise_remote", { cancellable });
}
public override async Gee.List<Geary.Email>?
list_email_by_id_async(Geary.EmailIdentifier? initial_id,
int count,