getting-things-gnome / gtg

Getting Things GNOME! trunk
https://wiki.gnome.org/Apps/GTG
GNU General Public License v3.0
556 stars 164 forks source link

Manual synchronization button to force CalDAV sync #929

Open cpitclaudel opened 2 years ago

cpitclaudel commented 2 years ago

Currently it seems that the CalDAV service only supports periodic synchronization. It would be very nice to have a button to trigger immediate synchronization without waiting for the next sync.

Tagging @jaesivsm for guidance on the implementation.

MagicFab commented 1 year ago

As a new user I found it a bit strange not to have any feedback on synchronization. Once it worked I kind of trusted it - but it took some time. I'd refer anyone willing to tackle this to try Joplin and observe their sync feedback, here's an example:

image

This is always visible on the bottom left part of the main window. That huge button does what it says.

jaesivsm commented 1 year ago

While technically possible (the "sync" method call is pretty straightforward) in the current GTG implementation, backends sync are triggered by a mechanism independent from the actual plug. The mechanism kinda "oversee" the run of the sync process (technically it's run in a thread as far as I remember). So a better way to do that would be to have said button just talking to that mechanism and triggering an early sync. So it'd be pretty independent from the plug implementation (and kinda out of my reach right now).