- nsISelection object's IDL
- Everything can be a link with Mozilla's window.getSelection() method and the W3C DOM Range API
- Using the W3C DOM Level 2 Range Object as Implemented by Mozilla by Jeffrey M. Yates for PBWizard. I'm not sure yet what's the difference between Selection and Range objects (that is,
nsISelectionandnsIDOMRange) other than Range is a DOM thing and Selection appears to be a Mozilla implementation thing:The user cannot create nor destroy selection objects. They can only get a reference to the window’s instance of the Selection object,
so whenever you select something on a web page in Mozilla, the Window object's Selection object's properties as to what's selected are set to represent the selection you made. - Andrew Clover's webdesign-l post lamenting the disuse of nsISelection in text area
- Xopus, Q42's web document editing system, the downloadable Mozilla contentEditable widget from which is my starting point
- XBL - The Extensible Bindings Language, a preliminary description of XBL, which besides being inaccurate these days is pretty much already taken care of with the mozce widget
Current problem: using the Home or End keys then typing will, after the first character is added, place the cursor on the wrong side of that first character. That is, pressing Home then typing Hello will enter elloH in the document, because the cursor is before the H after it's typed rather than after.