1: <h1>Annozilla 'to do' list</h1>
2: <h2>Short term</h2>
4: <li>FF3 compatibility. (Grey background on annotation editor? "Syntax error" in error console.)
5: <li>Change from Local to Remote server and load annotations: old annotation icons and highlighting are not removed. (They are removed from the sidebar list correctly.)
6: <li>No animation when deleting annotation.
7: <li>Don't write to window.status?
8: <li>Are we slowing down new window/tab creation by loading so much code into the context menu? (use mozIJSSubScriptLoader?)
9: <li>Preference wizard for easy first-time setup. (Now pretty much working I think, except, if Annozilla sidebar is open, the server settings don't seem to be used until after a restart - seems a bit of an edge case).
10: <li>iconClick->openEditorWindow->doesn't get fragment to add temporary icon
11: Error: [Exception... "'openEditorWindow requires either a fragment or an existing annotation' when calling method: [nsIDOMEventListener::handleEvent]" nsresult: "0x8057001e (NS_ERROR_XPC_JS_THREW_STRING)" location: "<unknown> data: no].
12: (Does it need it? The condition in the code doesn't seem to match the error message.)
13: <li>IconManager trouble getting body from server?
14: due to asynchronous body load: see loadBodyOnSuccess
15: <li>Don't want to load annotation bodies during annotation loading (in general case - OK for local server)
16: <li>Remove server as default post server if that server is deleted from the list
17: <li>"Basic" server prefs - is there any way we can set the data up only on "OK"?
18: <li><strike>Move 'Server prefs' and 'Edit Site List' back into the main panel on Firefox</strike> (fixed in CVS)
19: <li><strike>Rename "Post"/"Update" to "Save"</strike> (fixed in CVS)
20: <li><strike>Fix memory leaks (3 objects leaked per window)</strike> fixed in CVS
21: <li><strike>Get <code>"Stylesheet annotations.css not found: using chrome://annozilla/content/annotations.css"</code> in error console.</strike> Update: this is intended behaviour, however I have removed the logging to the console.
22: <li><strike>Autoloading for tabbed browsing?</strike> Implemented by CGH.
23: <li><strike>From an empty sidebar (showing "No annotations loaded"), create an annotation without first loading the annotations for the page. The new annotation is added for the list but "No annotations loaded" is still present.</strike> Fixed, but other scenarios exist where this could be problematic.
24: <li><strike>Remove extra nodes from DOM when a highlight is deleted. (At the moment we just remove the highlighting.)</strike>
25: <li>Open annotation window by double-clicking on icon opens window at unreasonably small size. <strike>Or sometimes get "Sorry, couldn't download the annotation body."</strike> - fixed by allowing multiple annotation windows
26: <li><strike>Integrate Firefox 2 built-in spelling checker.</strike> fixed in CVS
27: <li><strike>Annotation passed to postAnnotationOnSuccess from remote server
28: doesn't have proper annotation type; need to reload to get it
29: and sometimes author is something like "rdf#mjAmH".
30: (We send RDF to the server and get back an annotation to indicate success;
31: however the annotation data is incomplete and so we try to supplement it
32: with the data we originally passed. The test on 'creator' goes wrong,
33: because we pass it as a literal and get it back as a resource.
34: We fail to overwrite the more "specific" type of "Comment" because the
35: "Annotation" type is already present.) Fixed.</strike>
38: <h2>Medium term</h2>
40: <li>Make all sidebar options available via menu (not just context menu)
41: <li>In the Server Options panel, display "Local Server" not "urn:localserver"
42: (if possible)
43: <li>Rework classes using model/view/controller terminology. (The
44: nsIAnnotationsObserver provides some of this.)
45: <li>On sidebar load with no servers, make it easier to load the Server options
47: <li>Move multiple server support into an 'Advanced' panel???
48: <li><strike>Use XBL language binding everywhere</strike> Now expecting to
49: remove the language options from the UI
52: <h2>Long term</h2>
54: <li><strike>XBL for annotation icons and/or highlights</strike> Doesn't seem to be possible because we can't bind to arbitrary text nodes
55: <li>The 'fastback' feature would presumably leave annotation icons/highlights in the document but not held by Annozilla. Could the annotation data be held in the document, with DOM UserData? (speculation, I don't know whether this is possible.)
56: <li>Test cases
57: <li>Unit tests