20313728d2
from a different window: * Made controller.notebooks responsible for preventing unmodified notes from being saved, instead of model.Notebook handling this task. * Created a revision validator for passing revisions as arguments to exposed methods. * controller.Notebooks.save_note() now requires a previous_revision parameter, used to determine whether the note has been modified in the particular window it's being saved from. * save_note() returns a new previous_revision value, so the client can determine whether a save has occurred from another window. * controller.Notebooks.undelete_note() fixed to quietly bail if the note to undelete isn't actually deleted, which can happen if it was undeleted in another window. * Editor() now responsible for making revisions list if it doesn't exist * No longer giving an "undo" message when the user deletes an empty note. * On the client side, detecting whether the previous_revision as reported by save_note() looks correct, and if not, alerting the user about the conflict. Also displaying a "compare versions" button that opens both the current version and the previous version. |
||
---|---|---|
.. | ||
test | ||
__init__.py | ||
Async.py | ||
Database.py | ||
Expire.py | ||
Expose.py | ||
Html_cleaner.py | ||
Html_nuker.py | ||
Notebooks.py | ||
Root.py | ||
Scheduler.py | ||
Updater.py | ||
Users.py | ||
Validate.py |