Knotes and kontact not syncing
- TDE version: R14.1.0
- Distribution: debian buster
- Hardware: amd64
knotes and kontact do not sync changes with each other. This leads to loss of information when editing notes in both environment at the same time.
Steps to reproduce
- Create two notes A and B in knotes
- Open kontacts. Both notes appears and are the same
- Modify note A in Knotes. Verify the changes are reflected in the .ics files
- Note that kontact does not display the modified note A but still the original one. Even clicking the "sync" button in contact does not update the note
- Modify note B in kontact. Check .ics file. Notice that note B is updated with the new content, but at the same time note A has been overwritten with the original context (prior to 3.)
In addition to this, every time Kontact is open, internally it updates the "last modified" time of all notes. When saving/modifying a note, the "last modified" time of all notes is also saved, incorrectly overwriting the value previously saved in the .ics file. The overwriting happens even if a note was not actually modified, which is incorrect.
I observed it also before I wrote the plugins for syncevolution (before this request for extending the interface).
You need to restart knotes, so that the note created in kontact (knote_part) can be seen in knotes. The problem is when you delete the note in kontact and close knotes. Knotes writes all the notes and thus the deleted note is also written. If you modify in kontact same logic applies as described by you.
Yes, restarting either knotes or kontact will reload the latest .ics files. The problem is that the content of that file could no longer be valid, since some of the changes may have been lost/overwritten.
There should be either a notification mechanism when a note is modified or both programs should check whether there were some updates to the notes prior to save them and take different actions depending on which one is the most recent.
... or I was thinking there should be an interface that both would use properly + the notification mechanism mentioned by you. Perhaps I'll look soon at it as the problem with my knotes interface extension still remains :)
(unfortunately being too busy lately, but sooner or later it will be done)
You are correct, probably the interface would be part of the notification mechanism. Perhaps something common is already there, we will need to check in the code
Deleting a branch is permanent. It CANNOT be undone. Continue?