Added some comments of the form "// XXX: ERROR_HANDLING <explanation>"
wherever I saw a potential error but wasn't 100% sure of the intention of the code.
Fixed a few bugs along the way.
editor/base/Makefile.in
editor/base/makefile.win
- Modified makefiles build files that were
renamed, and use new define to build the
API Logging code.
editor/base/nsEditor.cpp
editor/base/nsEditor.h
editor/base/nsHTMLEditor.cpp
- Removed all ENABLE_JS_EDITOR_LOG ifdef'd code.
- Removed all references to nsVector.h.
editor/base/nsEditorFactory.cpp
- Added ENABLE_EDITOR_API_LOG ifdef'd code
that will create an instance of nsHTMLEditorLog
instead of nsHTMLEditor.
editor/base/nsEditorTxnLog.cpp
- Initial checkin of file. File was originally named nsJSTxnLog.cpp.
editor/base/nsEditorTxnLog.h
- Initial checkin of file. File was originally named nsJSTxnLog.h.
editor/base/nsHTMLEditorLog.cpp
- Initial checkin of file. File was originally named nsJSEditorLog.cpp.
- nsHTMLEditorLog.cpp now derives from nsHTMLEditor, and only
overrides methods that modify the content tree and are publicly
available via XPIDL.
editor/base/nsHTMLEditorLog.h
- Initial checkin of file. File was originally named nsJSEditorLog.h.
- nsHTMLEditorLog.cpp now derives from nsHTMLEditor, and only
overrides methods that modify the content tree and are publicly
available via XPIDL.
a mime type and a flag argument. Also fix the following bugs:
9746: get rid of bogus empty <style> in head.
8143: save wrap column in editor shell in case it's set before the
editor is created.
9470, 9488: allow explicit specification of formatted output.
1. IsEditable is much less hacky. It basically says:
1. if the node is a special bogus text node, it's not editable
2. if the node is a text node with only newlines, then it's not editable
3. if the node has no frame associated with it, then it is not editable
4. otherwise, it is editable.
As part of this, I had to make IsEditable non-static. This had some cascading effects on static methods that called
IsEditable, which likewise had to be made non-static.
2. SetTextProperties now works when the endpoints are leaf nodes (like images), not just text. Charlie, you should
put this through some stress cases.
nsIHTMLEditor, nsITextEditor, and nsIEditorShell and enabled
the "Start Log" and "End Log" menu items in the editor test bed.
* Modified makefiles for Unix and Win32 to turn on Editor API Logging.
* Added action argument to the DeleteSelection() method in nsIEditorShell.
* Modified nsJSTxnLog to use nsJSEditorLog when writing it's output.
for HTML and CSS atoms, since we can't get these from layout yet. The old
use assumed one editor, but as we know many editors can exist simultaneously.
Now, the editors share a singleton which is fetched from a factory method,
saving memory and allocation overhead.