Annotation of annozilla/www/ToDo.html, revision 1.11
1.2 matthew 1: <h1>Annozilla 'to do' list</h1>
1.1 matthew 2: <h2>Short term</h2>
1.10 matthew 4: <li>FF3 compatibility. (Grey background on annotation editor? "Syntax error" in error console.)
1.11 ! matthew 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. Update: actually I don't think they are.)
1.10 matthew 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"?
1.11 ! matthew 18: <li>Improved behavior for tabbed browsing (autoload for multiple tabs at once etc.) This works well now. The sidebar throbber doesn't always get updated correctly though, and some methods don't care about the "target" parameter when they probably should.
! 20: <li><strike>"Basic" server prefs - got the following setting up a remote server:
! 21: <pre>Error: uncaught exception: [Exception... "Component returned failure code: 0x80070057 (NS_ERROR_ILLEGAL_VALUE) [nsIRDFService.GetResource]" nsresult: "0x80070057 (NS_ERROR_ILLEGAL_VALUE)" location: "JS frame :: chrome://annozilla/content/prefs/pref-annozilla-servers.js :: setBasicServer :: line 429" data: no]</pre></strike> Fixed in CVS.
! 22: <li><strike>After changing server types and trying to select an annotation icon, get the error "Unable to delete the selected annotation due to an internal error. Try reloading the annotations for the page." - but I was only attempting to open the annotation, not delete it. (These errors are not properly localised anyway.)</strike> Fixed in CVS.
1.2 matthew 23: <li><strike>Move 'Server prefs' and 'Edit Site List' back into the main panel on Firefox</strike> (fixed in CVS)
1.8 matthew 24: <li><strike>Rename "Post"/"Update" to "Save"</strike> (fixed in CVS)
1.2 matthew 25: <li><strike>Fix memory leaks (3 objects leaked per window)</strike> fixed in CVS
1.3 matthew 26: <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.
1.7 matthew 27: <li><strike>Autoloading for tabbed browsing?</strike> Implemented by CGH.
1.10 matthew 28: <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.
1.7 matthew 29: <li><strike>Remove extra nodes from DOM when a highlight is deleted. (At the moment we just remove the highlighting.)</strike>
1.6 matthew 30: <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
1.9 matthew 31: <li><strike>Integrate Firefox 2 built-in spelling checker.</strike> fixed in CVS
1.10 matthew 32: <li><strike>Annotation passed to postAnnotationOnSuccess from remote server
1.8 matthew 33: doesn't have proper annotation type; need to reload to get it
1.10 matthew 34: and sometimes author is something like "rdf#mjAmH".
35: (We send RDF to the server and get back an annotation to indicate success;
36: however the annotation data is incomplete and so we try to supplement it
37: with the data we originally passed. The test on 'creator' goes wrong,
38: because we pass it as a literal and get it back as a resource.
39: We fail to overwrite the more "specific" type of "Comment" because the
40: "Annotation" type is already present.) Fixed.</strike>
1.1 matthew 41: </ul>
43: <h2>Medium term</h2>
1.10 matthew 45: <li>Make all sidebar options available via menu (not just context menu)
46: <li>In the Server Options panel, display "Local Server" not "urn:localserver"
47: (if possible)
48: <li>Rework classes using model/view/controller terminology. (The
49: nsIAnnotationsObserver provides some of this.)
50: <li>On sidebar load with no servers, make it easier to load the Server options
1.3 matthew 52: <li>Move multiple server support into an 'Advanced' panel???
1.10 matthew 53: <li><strike>Use XBL language binding everywhere</strike> Now expecting to
54: remove the language options from the UI
1.1 matthew 55: </ul>
57: <h2>Long term</h2>
1.9 matthew 59: <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
1.3 matthew 60: <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.)
1.1 matthew 61: <li>Test cases
62: <li>Unit tests