c50b45865c
Evolution shows a meeting twice on the day of a modified recurrence, if the meeting series was originally created and modified in Exchange, then imported into Google Calendar. The reason is that the RECURRENCE-ID in that case ends up being in UTC, even if the parent event has a time zone. Evolution and/or libical seem to have a bug here, IMHO they should recognize that the RECURRENCE-ID time is the same. SyncEvolution now works around this by transforming the UTC RECURRENCE-ID time into the time zone of the DTSTART time of the parent event. This is combined with removal of X-LIC-ERRORS into a new fixIncomingCalendar() method which needs to be called whenever a complete VCALENDAR is received from the CalDAV server (adding data from a report, GET). This transformation changes the "rid" part of the item IDs. It should be okay in a two-way sync (remove one sub item, add another) and a slow sync (libsynthesis recognizes the times as equal). |
||
---|---|---|
.. | ||
backends | ||
dbus | ||
gdbus | ||
gnome-bluetooth | ||
gtk-ui | ||
syncevo | ||
synthesis-includes | ||
templates | ||
.cvsignore | ||
.gitignore | ||
async.patch | ||
client-test-app.cpp | ||
client-test-buteo.cpp | ||
client-test-buteo.h | ||
CmdlineSyncClient.cpp | ||
CmdlineSyncClient.h | ||
Makefile-gen.am | ||
NotificationBackendBase.h | ||
NotificationBackendLibnotify.cpp | ||
NotificationBackendLibnotify.h | ||
NotificationBackendMLite.cpp | ||
NotificationBackendMLite.h | ||
NotificationBackendNoop.cpp | ||
NotificationBackendNoop.h | ||
NotificationManager.cpp | ||
NotificationManager.h | ||
NotificationManagerBase.h | ||
NotificationManagerFactory.cpp | ||
NotificationManagerFactory.h | ||
org.syncevolution.service.in | ||
README.h | ||
README.templates | ||
shlibs.local | ||
syncevo-dbus-server-startup.sh.in | ||
syncevo-dbus-server.cpp | ||
syncevo-dbus-server.desktop.in | ||
syncevolution.cpp | ||
valgrind.supp |
The configuration templates in "templates" get installed into $(datadir)/syncevolution/templates. When adding/changing a new server, then only enter the properties which need to be changed here so that the default values can be used for the remaining properties. An icon can be added here for servers. The file name must start with "icon". Server configurations must be kept in sync in three different places: - here (if a server is installed as files) - in SyncEvolutionConfig.cpp's EvolutionSyncConfig::createServerTemplate() - in SyncEvolutionCmdline.cpp's test server configs - in test/test-dbus.py testGetConfigsTemplates() Note that server icons must come with a suitable license that allows redistribution.