if you clicked a link with a note id and a note with the link's title was
already open, it just highlighted that note, regardless of the id. Now, that
will only happen if the link has no id.
* When you try to load a note called "all notes", load a magic (dynamically-generated) note that
lists all notes in reverse revision time order.
* Changed controller.Notebooks.recent_notes() to all_notes().
* Prevent "all notes" link from showing up when you're in the trash.
* Prevent link pulldown from showing up for links within read-only notes.
* Wrote a crappy deletenote tool.
Now the client has to explicitly request the inclusion of startup notes.
Also no longer including startup notes or revision lists with every single
serialized Notebook.
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.
pulldown with "titles only" and "everything" radio buttons, defaulting to
"titles only".
* Wiki javascript code for submitting a search now sends a new titles_only
parameter according to what the user has selected in the search pulldown.
* controller.Notebooks.search() now takes a new titles_only boolean argument,
which does exactly what you would expect.
* Altered Html_cleaner to allow link targets.
* Modified Wiki.load_editor(), Wiki.resolve_link(), and Link_pulldown() to
support external links with "_new" targets.
* Modified Editor.mouse_clicked() to explicitly open a new window for external links clicked in
read-write editors, because the browser won't open clicked link by itself unless they're in
read-only iframes.
* Removed a duplicate Editor.contents() function.
* Increased Link_pulldown title field size to 30 characters.
it was just plain broken:
* Setting link hrefs is no longer done in quite so many places to prevent
conflicts. Still could be more centralized though.
* Editor is no longer responsible for tracking note titles. It now issues
signals for title changes, and Wiki takes care of tracking titles for all
open editors.
* A few places in Editor weren't making use of the new link_title()
convenience function. Now they are.
* They way Wiki was associating link pulldowns with their links was
completely broken, because Javascript Arrays can't use DOM objects as keys.
At least not if you want them to work. Now just setting a "pulldown" member
on each link node directly.
* Moved some of the "if you click a link and the target editor is already
open, just highlight it" logic out of Editor and into Wiki. (Both
load_note() and resolve_link(), unfortunately.)
* Made Link_pulldown.title_field_changed just rely on resolve_link() instead
of doing all the link resolving itself.