mozilla/editor/libeditor/html/nsHTMLDataTransfer.cpp
mozilla/editor/libeditor/html/nsHTMLEditRules.cpp
mozilla/editor/libeditor/html/nsHTMLEditRules.h
mozilla/editor/libeditor/html/nsHTMLEditor.h
mozilla/editor/libeditor/text/nsTextEditRules.h
- Added nsHTMLEditRules::WillLoadHTML() which removes any mBogusNode.
- Modified nsHTMLEditor::LoadHTML() to call Will/DidDoAction().
- Changed all references of kOpHTMLLoad to kOpLoadHTML to match
function name, and added kLoadHTML.
r=jfrancis.netscape.com sr=sfraser.netscape.com a=asa@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@107735 18797224-902f-48f8-a5cc-f745e15eee43
The fix is to
- maintain the index of PasswordBuf at the start of IME
- maintain the old IME text
- remove the old IME text from PasswordBuf
/r=jfrancis, /sr=kin, /a=blizzard
git-svn-id: svn://10.0.0.236/trunk@96481 18797224-902f-48f8-a5cc-f745e15eee43
r=jfrancis, sr=sfraser, r=leaf for build changes
Putting back Bidi selection code that was removed by 65557
git-svn-id: svn://10.0.0.236/trunk@95640 18797224-902f-48f8-a5cc-f745e15eee43
27914, 27305, 28690, 14608, 27306, 28757
These fixes reviewed by cmanske, apprvd rickg;
also fix for 28724 (caret positioning problems)
reviewed by mjudge, apprvd by jar.
git-svn-id: svn://10.0.0.236/trunk@61653 18797224-902f-48f8-a5cc-f745e15eee43
In addition some improvements were made to the adjustment of selection after an edit action (example: backspacing through a list item now pops you up to the previous item)
git-svn-id: svn://10.0.0.236/trunk@58013 18797224-902f-48f8-a5cc-f745e15eee43
fixed 21196: select all no longer selects the special break we use in empty documents (this would cause an invisible selection).
fixed 21430: choosing a new alignment in an empty doc used to do nothing. Now it works but I've exposed a selection bug inthe process...
fixed 22225: a little unintended re-entrancy caused multiple breaks to be inserted in empty table cells when doc read in.
git-svn-id: svn://10.0.0.236/trunk@57668 18797224-902f-48f8-a5cc-f745e15eee43
* fixed a paste/rules interaction problem (19367)
* introduced an init time pass over html documents to populate empty list items and table cells with special breaks so that the user can click in them and actually get a caret
* fixed some warnings
r = floppy moose
git-svn-id: svn://10.0.0.236/trunk@54561 18797224-902f-48f8-a5cc-f745e15eee43
and add appropriate edit rules to split pre tags when editing plaintext.
r=sfraser
git-svn-id: svn://10.0.0.236/trunk@53381 18797224-902f-48f8-a5cc-f745e15eee43
added some assertions and error checking to nsEditor::Do, no bug #, r=kin
fixed bug 14898 (implemented type-in state for any context), r=jfrancis
git-svn-id: svn://10.0.0.236/trunk@50004 18797224-902f-48f8-a5cc-f745e15eee43
rules code can call SetFlags with mEditor initialized and do real
processing if it wants to.
git-svn-id: svn://10.0.0.236/trunk@42775 18797224-902f-48f8-a5cc-f745e15eee43
* Added some code to restore selection after RemoveTextProperty.
* Made a tiny change to the way the editor holds onto the transaction manager, so client (like the ender text control) can
turn undo on and off effectively
* Fixed a bug in IsNodeInline that was causing GetBlockParent to return the wrong parent node (and who knows what
other mischief) where atom compares were being done on strings of different case, for <B>, "b" vs. "B". The DOM
method nsIDOMElement::GetTagName forced the returned tag name to upper case. I don't know how long that has
been true, but I assume it's a fairly recent change (or something on our side related to it changed recently) or this method
never would have worked. I also found a few cases of nsString::Equals that I changed to EqualsIgnoreCase
* Made some general improvements to the interaction between editors and rules, so that the aCancel out param is always
intialized, and all rules with Will... are matched with a Did... call. Added Will/DidSetTextProperty() and
Will/DidRemoveTextProperty(). This helps enable plain text mode. Added a skeleton for max length support in text editor.
* fixed some warnings.
git-svn-id: svn://10.0.0.236/trunk@34183 18797224-902f-48f8-a5cc-f745e15eee43
* added focus listener. Doesn't do much yet, but when focus notifications start appearing, we'll be ready for them. The code is in
place to hide selection when we lose focus and paint selection when we get focus. That's probably not quite right, but it's a start.
We will need to be able to determine the distinction between losing focus to another control within our app, and losing focus to
another app.
* added support for disabled and readonly states in the editor. This is accomplished by having flags set by the client, and letting the
rules system deal with those flags. The flags I added are:
TEXT_EDITOR_FLAG_PLAINTEXT 0x01 // only plain text editing is allowed
TEXT_EDITOR_FLAG_SINGLELINE 0x02 // enter key and CR-LF handled specially
TEXT_EDITOR_FLAG_PASSWORD 0x04 // text is not entered into content, only a representative character
TEXT_EDITOR_FLAG_READONLY 0x08 // editing events are disabled. Editor may still accept focus.
TEXT_EDITOR_FLAG_DISALBED 0x10 // all events are disabled (like scrolling). Editor will not accept focus.
* added WillInsertBreak/DidInsertBreak into text rules, so flags could be checked. This gets us readonly, disabled, and single line
behavior.
* cleaned up the code that allocates, registers, and destroys event listeners. Thanks to Kin and Simon for cleaning up the
ownership model on the listeners, it was a big help.
* added support for a max text length. You can now tell the text editor, be no bigger than n characters.
git-svn-id: svn://10.0.0.236/trunk@33153 18797224-902f-48f8-a5cc-f745e15eee43