I also find the current push & pull syncing really troublesome sometimes! I keep forgetting to sync, or forget on which pc I editted which note last.
I actually got so confused, I had to write a script/batch file to compare two exported txt databases and then manually merged them*.
I like the "drop.now" solution but it isn't fool proof. First you have no control over dropbox's sync-ing, so you might take ownership of the file just before dropbox tries to sync from another pc with new updates - thus losing the changes. Plus, polling for the existance of a drop.now file is also open to the same problems as well as its own locking and deleting issues. And what if you're not online?
My suggestion is to merge rather than to exclusively push or pull. Merging would:
1. Pull the current dropbox DB
2. Merge it with the local DB
3. push the merged DB back to the dropbox folder (if there was any changes)
Further more, instead of automatic or scheduled pushing/pulling/merging, I propose the following:
If a dropbox folder is configured in the options dialog, a sync "toolbar" would appear in flashnote's menubar with a sync status light.
When you open flashnote, it quickly compares the file date & time of the local DB with the dropbox copy.
- dates are the same, it shows a green light
- local DB is newer, it shows a orange light and suggests a merge or push (this could be a button on the menubar that gets enabled/highlighted)
- dropbox DB is newer it shows a red light and suggests a merge or pull
This status light should be quick to implement and maybe Softvoile can do this as a first iteration, before merging :
It would be a big help to remember to sync before leaving the PC .
*PS. I only found this compare utility after I wrote my txt files compare script. [http://www.codeproject.com/Articles/220018/SQLite-Compare-Utility] It compares two SQLite DBs (which is what Flashnote use natively), and can be used to manually merge two DB's as well. You have to be careful not to overwrite different entries, so make your backups beforehand!