Commit Graph

42 Commits

Author SHA1 Message Date
jfrancis%netscape.com
50f00945bf fixes for the following bugs:
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
2000-02-25 04:39:30 +00:00
jfrancis%netscape.com
056f231676 implementing font increase/decrease size for html editor (bug 18774) r=floppy moose
git-svn-id: svn://10.0.0.236/trunk@60127 18797224-902f-48f8-a5cc-f745e15eee43
2000-02-08 12:53:34 +00:00
akkana%netscape.com
831fa6d5c7 22662, 16720: greatly improve formatting of html source for inserted html tags. r=jfrancis
git-svn-id: svn://10.0.0.236/trunk@58667 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-26 00:57:37 +00:00
jfrancis%netscape.com
de4c509f39 fix for 21412 - backspace wouldn't remove list items in html editor.
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
2000-01-17 12:41:34 +00:00
jfrancis%netscape.com
3384856d4f * fixed 19596;
* fixed 23597;
* fixed deletion bug that could cause to breaks to be deleted instead of one, when backspacing once. (no #)
* partial fix for current paragraph style not being properly reported in the composer toolbar.  (no #)


git-svn-id: svn://10.0.0.236/trunk@57934 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-15 14:29:29 +00:00
jfrancis%netscape.com
8f19524dca added in some rules code for mail quoting. This
fixes bug: 19979   (extra blank line showing up in
mail that has quotes)

partial progress on block transformation work:
unlisting a list now works mostly correctly again,
instead of merging all the former list items into
one run of text (no bug number).

Moz-br's are now added in one more circumstance:
when you have a br at the end of some inline
content that is followed by a new block (like a
list, table, etc.).  This is needed for the same
reason that the other moz-br's are: to generate a
blank line that the user expects after hitting
return. (no bug number)

DTD-related work to enable the editor to check if
you should be able to type given the current
selection.

fixed bug 22944: inserting an <A> in a table
splits the table.

Made some progress on text paste performance, but
it's still too slow.  That's 19273, which I'm
leaving open

fixed bug 15258:  selection capable of getting out
of the body element.

fixed a bug where code that merged adjacent text
nodes would merge the non-editable "formatting"
textnodes, (no bug number).  Added code to prevent
selection from ending up inside a non-editable
text node.

fix for 11994, an IME bug.


git-svn-id: svn://10.0.0.236/trunk@57272 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-10 10:13:58 +00:00
jfrancis%netscape.com
11faed23b2 Fix for bug 21346.
This is actually a major reworking of how the low level editor txns perturb selection.  There is a mode now for telling the txns not to disturb the selection.  There is also a fix for unlisting lists (sometimes list items got merged unintentionally when unlisting).


git-svn-id: svn://10.0.0.236/trunk@56714 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-04 03:09:41 +00:00
jfrancis%netscape.com
edba5add24 fix for 20457: deletion in editor pretty darn screwy. Lots of changes to improve this. Document modifying entry points in editor now go thru a standard sandwich, which allows tracking of what changed in the doc, which allows proper post-processing of what changed. Also, all deletions now go thru the rules code, if applicable. Also some bugs in tracking the changed document portion have been fixed. Finally selection setting after a delete is improved.
git-svn-id: svn://10.0.0.236/trunk@55568 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 08:30:19 +00:00
jfrancis%netscape.com
c3b10ef137 fix for bug 20205: selection was getting jerked around by whitespace conversion code.
git-svn-id: svn://10.0.0.236/trunk@54765 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 21:58:37 +00:00
jfrancis%netscape.com
ed38a43f75 * ported the html editor work for the "caret doesn't move when i hit return" bug (16715) back to the plaintext editor.
* 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
1999-11-29 08:28:46 +00:00
jfrancis%netscape.com
efe6e42352 fixing bad const in interface (not caught by mac compiler)
git-svn-id: svn://10.0.0.236/trunk@54466 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:36:34 +00:00
jfrancis%netscape.com
5020ab053b implemented a system to track what portion of a document is affect by an editor action. Used that system to help solve extensive whitespace handling problems, ans also problems with caret placement in response to returns (this lattter fix for html editors only - plaintext coming later). Fixed numerous list bugs involving outdenting, unlisting, and splitting lists.
Checkin addressees these bugzilla bugs:
2073 & 12337 - whitespace trouble when typing (you can end up with all nbsp's instead of spaces)


git-svn-id: svn://10.0.0.236/trunk@54463 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:19:45 +00:00
dmose%mozilla.org
0efb7c174c updated xPL license boilerplate to v1.1, a=chofmann@netscape.com,r=endico@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@52910 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 03:43:54 +00:00
jfrancis%netscape.com
53c8075ee8 fixes for bugs: 16361,12253,15696,15734; r=sfraser
git-svn-id: svn://10.0.0.236/trunk@52381 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-01 15:15:35 +00:00
jfrancis%netscape.com
0209785bbb revised rules system api to include "handled" parameter and ceased to overload the meaning of the "cancel" parameter; added TypedText() method to editor, editorshell, and logging, so that logging will work properly with typing; coallesce deletions for undo purposes r=buster@netscape.com
git-svn-id: svn://10.0.0.236/trunk@49999 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-06 19:34:09 +00:00
jfrancis%netscape.com
8e3610bfe2 revised UNDO; introduced first cut at the "mozdiv" typing rules
git-svn-id: svn://10.0.0.236/trunk@49317 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-29 20:08:15 +00:00
jfrancis%netscape.com
23d9478cc5 fix for 12675; also added a wrapper for GetNextNode()/GetPriorNode() that checks for containment in the <body>
git-svn-id: svn://10.0.0.236/trunk@47001 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-12 01:36:07 +00:00
jfrancis%netscape.com
14c949b1d4 fix for bug 13482
git-svn-id: svn://10.0.0.236/trunk@46644 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-09 22:22:14 +00:00
jfrancis%netscape.com
132134ca11 implemented RemoveList();
deletion doesn't scatter so many empty nodes;
mailcite rules started;
general deletion work (still WIP);
several small bugfixes;
refactored list item outdenting code


git-svn-id: svn://10.0.0.236/trunk@46126 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-06 19:51:59 +00:00
jfrancis%netscape.com
a1542a6e29 more deletion work...
git-svn-id: svn://10.0.0.236/trunk@45518 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-01 21:23:47 +00:00
jfrancis%netscape.com
99de773e68 refactoring text insertion code; indent/outdent now work with lists and list items.
git-svn-id: svn://10.0.0.236/trunk@44276 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-24 08:56:51 +00:00
jfrancis%netscape.com
41485faa2c some reorg of block transformation code; implemented make-{header,preformatted,address,normal}; tweaked make list to honor <br> in some circumstances; rewrote "return in list item" to pop you out of list if item is empty; rewrote "return in header" to work with non-trivial headers.
git-svn-id: svn://10.0.0.236/trunk@43484 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-18 08:13:06 +00:00
jfrancis%netscape.com
317900525c added helper function IsEmptyBlock()
git-svn-id: svn://10.0.0.236/trunk@42820 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-09 21:49:25 +00:00
buster%netscape.com
645dd7a8ea moved handling of flags from rules constructor to rules init, so
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
1999-08-09 18:39:49 +00:00
sfraser%netscape.com
4dd92661ce Landing editor API changes. Removed nsITextEditor and nsTextEditor, split interfaces into more, non-overlapping interfaces, and other general cleanup.
git-svn-id: svn://10.0.0.236/trunk@42725 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-09 01:37:50 +00:00
akkana%netscape.com
ce6c1f2bdd Oops, I misunderstood tor's fix for the sunos bustage
git-svn-id: svn://10.0.0.236/trunk@37911 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-01 23:41:29 +00:00
buster%netscape.com
0513dccdf4 0. possible fix for Sun build bustage.
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.


git-svn-id: svn://10.0.0.236/trunk@37741 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-01 18:42:28 +00:00
jfrancis%netscape.com
aaaa87a18c some cleanup and also selection enforcement for plaintext documents: selection is pinned to within the PRE tag on any edit action
git-svn-id: svn://10.0.0.236/trunk@37698 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-01 13:42:03 +00:00
jfrancis%netscape.com
d314457228 improvement of editing rules for insert list, indent, outdent, and change alignment
git-svn-id: svn://10.0.0.236/trunk@36861 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-25 09:33:02 +00:00
jfrancis%netscape.com
ca6c1a3d36 editor rules framework for {make list, indent, outdent, change alignment}
git-svn-id: svn://10.0.0.236/trunk@35666 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-16 05:02:43 +00:00
buster%netscape.com
4bad1b96b8 * Added nsAutoSelectionReset, a tiny class that resets the selection to what it was before a block transformation.
* 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
1999-06-08 06:04:51 +00:00
jfrancis%netscape.com
61ea2c363e groundwork for block transformation functionality
git-svn-id: svn://10.0.0.236/trunk@33512 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-03 06:01:08 +00:00
jfrancis%netscape.com
677f048b01 cleanup util function duplication
git-svn-id: svn://10.0.0.236/trunk@33152 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-28 21:17:30 +00:00
akkana%netscape.com
392f2f0298 - Rename iDirection enum to ECollapsedSelectionAction
- Initial implementation of Insert HTML


git-svn-id: svn://10.0.0.236/trunk@30432 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-05 23:27:17 +00:00
jfrancis%netscape.com
cf6d856eef revamped join on deletion
git-svn-id: svn://10.0.0.236/trunk@30095 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-04 08:03:07 +00:00
jfrancis%netscape.com
8591f5670e more html typing rules implementation
git-svn-id: svn://10.0.0.236/trunk@29166 18797224-902f-48f8-a5cc-f745e15eee43
1999-04-26 14:08:52 +00:00
jfrancis%netscape.com
6c71acb72d more typing rules work - space and tab occassionally do the right thing now
git-svn-id: svn://10.0.0.236/trunk@28460 18797224-902f-48f8-a5cc-f745e15eee43
1999-04-21 14:49:58 +00:00
jfrancis%netscape.com
427a56fc02 merging in rules work with Simon's selection changes
git-svn-id: svn://10.0.0.236/trunk@27324 18797224-902f-48f8-a5cc-f745e15eee43
1999-04-13 13:35:08 +00:00
jfrancis%netscape.com
2b679b5ef6 attempting to fix unix build
git-svn-id: svn://10.0.0.236/trunk@27157 18797224-902f-48f8-a5cc-f745e15eee43
1999-04-12 14:10:24 +00:00
jfrancis%netscape.com
c6d12c638f checkpointing html typing rules
git-svn-id: svn://10.0.0.236/trunk@27152 18797224-902f-48f8-a5cc-f745e15eee43
1999-04-12 12:01:32 +00:00
jfrancis%netscape.com
f104246088 redoing rules architecture
git-svn-id: svn://10.0.0.236/trunk@26297 18797224-902f-48f8-a5cc-f745e15eee43
1999-04-05 17:21:59 +00:00
jfrancis%netscape.com
bdd8af18e1 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@25437 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-29 06:21:01 +00:00