Commit Graph

62 Commits

Author SHA1 Message Date
sfraser%netscape.com
48d4c08c0d Expose the transaction manager to outside, for bug 18395. r=akkana
git-svn-id: svn://10.0.0.236/trunk@61004 18797224-902f-48f8-a5cc-f745e15eee43
2000-02-16 01:36:30 +00:00
sfraser%netscape.com
a65a684b15 WIP for 18395, various editor command handling and updating changes. r=akkana
git-svn-id: svn://10.0.0.236/trunk@58123 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-18 21:50:15 +00:00
akkana%netscape.com
5bf44a084f 22655: add API to allow specifying charset when inserting/quoting html. r=rhp
16015: Add API and implementation for delete-to-beginning (^U). r=slamm,rhp
490: Insert formatting newlines when inserting new nodes. r=rhp


git-svn-id: svn://10.0.0.236/trunk@56743 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-04 20:38:12 +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
akkana%netscape.com
4059b56e74 18033: Add editor API for delete methods, and hook up an initial
set of emacs key bindings for Unix.  r=jfrancis


git-svn-id: svn://10.0.0.236/trunk@54475 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 04:11:51 +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
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
akkana%netscape.com
c02f965115 490: infrastructure for inserting formatting whitespace. Not turned on yet except for DEBUG_akkana
git-svn-id: svn://10.0.0.236/trunk@46804 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-10 18:54:13 +00:00
sfraser%netscape.com
8a797c14a4 Add DocumentIsEmpty to EditorShell.idl and nsIEditor, and modify length and content getters to do the right thing with an empty document (which contains the bogus text node).
git-svn-id: svn://10.0.0.236/trunk@46444 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-08 23:32:04 +00:00
cmanske%netscape.com
340b31c86b Added CloneAttributes to IDL and nsIHTMLEditor. Reworked property dialogs to accomodate AdvancedEdit dialog. Preliminary version of AdvancedEdit dialog done
git-svn-id: svn://10.0.0.236/trunk@45620 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-02 01:47:18 +00:00
cmanske%netscape.com
4192db5431 Changed IsNodeBlock to NodeIsBlock for JS. Fixed all compiler warnings. Added Advanced property Edit files
git-svn-id: svn://10.0.0.236/trunk@45482 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-01 19:58:25 +00:00
cmanske%netscape.com
03f3145567 Exposed IsNodeBlock for JavaScript. Added comments for editor methods. Temporary fix for insert image bug (12917). Fixed bug 11857. Preliminary support for setting title and adding Cancel button in message dialogs.
git-svn-id: svn://10.0.0.236/trunk@45410 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-01 01:22:37 +00:00
cmanske%netscape.com
117195748b Removed string bundle code from nsEditor into EditorShell and added access for JavaScript. Moved most of Save document code into EditorShell and added filetype filters to save dialog. Placed Advanced Edit functionality in an overly file. Removed redundant entity strings, that are now in overlays, from DTD files.
git-svn-id: svn://10.0.0.236/trunk@44967 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-28 02:40:18 +00:00
akkana%netscape.com
131d318ad4 Revise the doc encoder and content sink APIs yet again to make it easier
to add new flags (pass a flag in the constructor, rather than specific
booleans.  This in order to fix:
11249: Add flag to write only the body in html output.


git-svn-id: svn://10.0.0.236/trunk@44308 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-24 18:30:19 +00:00
buster%netscape.com
9d94630564 fixed some documentation
git-svn-id: svn://10.0.0.236/trunk@43591 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-19 13:33:49 +00:00
tague%netscape.com
1bdbfaf844 Fix bug #11687 - [Dogfood] Enable ender to save documents in encodings other than ISO-8859-1. Approved by chofmann@netscape.com, reviewed by buster@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@43310 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-13 22:26:50 +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
tague%netscape.com
5f2b704a17 Added support for replies from private DOM text events. See bug #4826
git-svn-id: svn://10.0.0.236/trunk@42391 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-06 02:32:13 +00:00
sfraser%netscape.com
ad6fe30c67 Fix the document state listener mechanism so that you can install listeners after the editor has been created, and still get their 'document creation' notification called.
git-svn-id: svn://10.0.0.236/trunk@41954 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-03 06:53:45 +00:00
sfraser%netscape.com
3e40d72a75 Added support for nsIDocumentStateListeners.
git-svn-id: svn://10.0.0.236/trunk@41409 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-28 02:56:33 +00:00
waterson%netscape.com
005a1179ef Use enum trick to get around VC++ braindead-ness wrt. 'const PRUin32'.
git-svn-id: svn://10.0.0.236/trunk@39352 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-14 19:42:55 +00:00
akkana%netscape.com
a878369d02 Restructure the editor output routines to allow passing in
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.


git-svn-id: svn://10.0.0.236/trunk@39332 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-14 18:54:29 +00:00
sfraser%netscape.com
c474a7e978 Added transactions for applying and removing style sheets
git-svn-id: svn://10.0.0.236/trunk@37965 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-02 03:57:50 +00:00
kin%netscape.com
0d49f312e2 Added ApplyStyleSheet() method to the various editor interfaces.
git-svn-id: svn://10.0.0.236/trunk@37845 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-01 19:32:35 +00:00
tague%netscape.com
ea708a16a8 Added clause and selection support for Input Methods. Fixes bug #8639, #8459, #6989, #7824
git-svn-id: svn://10.0.0.236/trunk@37435 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-29 20:31:22 +00:00
kin%netscape.com
38bb3e3ed2 * Added StartLogging() and StopLogging() methods to nsIEditor,
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.


git-svn-id: svn://10.0.0.236/trunk@35149 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-14 20:02:46 +00:00
akkana%netscape.com
91f72d1f82 Implement InsertHTML.
Also, some minor fixes, like warning removal and addition of error checking
in files which needed it.


git-svn-id: svn://10.0.0.236/trunk@34645 18797224-902f-48f8-a5cc-f745e15eee43
1999-06-10 21:31:42 +00:00
sfraser%netscape.com
580f23cfb4 Add unit test call to nsIEditor, and implement it in nsText- and nsHTMLEditors.
git-svn-id: svn://10.0.0.236/trunk@32880 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-27 04:10:04 +00:00
akkana%netscape.com
156d763247 Insert / Paste as Quotation.
git-svn-id: svn://10.0.0.236/trunk@32824 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-27 00:08:15 +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
buster%netscape.com
9a004fa0f0 1. block transformation infrastructure is now in place. We can go ahead and implement interesting
features like set paragraph style, set list type, indent, etc.  I'm sure there's holes in my
implementation that these high level features will make obvious.

2. I've factored a lot of utility methods from several modules into nsEditor as public static methods.
This makes them easily accessable to all, and will help Joe and I remove redundant methods.

3. I changed the HTML tags to lower case, and made all string compares case-insensitive.  No, this
isn't quite the right thing to do, but we don't have atoms from layout yet.  The Right Thing is for us
to reuse those atoms.


git-svn-id: svn://10.0.0.236/trunk@30367 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-05 04:05:19 +00:00
tague%netscape.com
6b3b505007 Fixed bug #5527 (Editor is not able to accumulate successive Japanese input)
git-svn-id: svn://10.0.0.236/trunk@30002 18797224-902f-48f8-a5cc-f745e15eee43
1999-05-03 22:57:48 +00:00
kin%netscape.com
65c225ef09 Added AddEditActionListener() and RemoveEditActionListener() methods.
git-svn-id: svn://10.0.0.236/trunk@29460 18797224-902f-48f8-a5cc-f745e15eee43
1999-04-27 19:16:26 +00:00
buster%netscape.com
a29a790970 fixed bug 4517
WIP on remove text attributes


git-svn-id: svn://10.0.0.236/trunk@26317 18797224-902f-48f8-a5cc-f745e15eee43
1999-04-05 20:52:29 +00:00
buster%netscape.com
8a761fe6ca added aFirst out param to GetTextProperty, so the caller can know if the first character has the property
in the case of aAny=true and aAll=false.


git-svn-id: svn://10.0.0.236/trunk@26217 18797224-902f-48f8-a5cc-f745e15eee43
1999-04-04 17:59:09 +00:00
buster%netscape.com
8851e742d6 fixed join.
made a special case for typing with BR as the selection (as after an InsertBreak.)
made DEL and BACKSPACE at the beginning and end of a text node
fixes bugs 3742 and 3756 (with permission from choff and gkostello)


git-svn-id: svn://10.0.0.236/trunk@24209 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-16 16:38:09 +00:00
sfraser%netscape.com
0a1636794b Add Cut, Copy and Paste to editor interfaces and classes, with a stub implemenatioon in nsEditor.
git-svn-id: svn://10.0.0.236/trunk@23571 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-10 21:29:41 +00:00
buster%netscape.com
9bf72e290c added nsIEditRules.h. Experimental, don't count on this.
git-svn-id: svn://10.0.0.236/trunk@23537 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-10 19:46:24 +00:00
cmanske%netscape.com
6987407539 Changed editor classes to inherited model. Fixed lots of destructor warnings.
git-svn-id: svn://10.0.0.236/trunk@22944 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-05 21:05:35 +00:00
scc%netscape.com
817f56596f rename |IID()| --> |GetIID()|
git-svn-id: svn://10.0.0.236/trunk@22744 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-03 19:48:57 +00:00
buster%netscape.com
19e607046b implemented GetTextProperty -- only works for bold and italic now,
trivial to add more properties
finished first cut at SetTextProperty.  This triggers lots of crashes in
range/selection code where we're holding onto a stale frame pointer (at
least, that's my best guess.)
synched with Charlie's change-o-rama
added an assert in DeleteTextTxn::Init() checking aNumCharsToDelete vs.
0
  NS_ASSERTION(0!=aNumCharsToDelete, "bad arg, numCharsToDelete");
if the number of chars to delete is 0, we shouldn't be creating a
transaction at all.  I had never seen this condition arise before
Charlie's checkin, I don't know if he introduced it or if it was a
latent bug I just never tripped over before.


git-svn-id: svn://10.0.0.236/trunk@22543 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-02 07:52:41 +00:00
cmanske%netscape.com
202c5b89dc Implemented nsHTMLEditor. Changed prototypes to be use NS_IMETHOD and NS_IMETHODIMP. Started table editing transactions
git-svn-id: svn://10.0.0.236/trunk@22534 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-02 05:30:53 +00:00
buster%netscape.com
8f4fa61d30 minor interface changes
git-svn-id: svn://10.0.0.236/trunk@21761 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-24 17:31:09 +00:00
buster%netscape.com
0a8d990683 work in progress
git-svn-id: svn://10.0.0.236/trunk@21229 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-18 23:01:06 +00:00
buster%netscape.com
f62022c72f Highlights:
updated to new nsCOMPtr usage
nsTextEditor::InsertBreak() implemented
  splits the text node at the caret (deletes any extended selection to force a collapsed selection.)
  inserts a <BR> which I assume we'll convert to a CR when we write to a text stream.
  undo and redo work, except for the bug noted below

More stuff:
interface cleanup
strategic debugging code added
delete selection txn sets the collapses the selection...this is just a placeholder, but I needed it for undo/redo of InsertBreak.
join and split now work for text nodes as well as interior nodes


git-svn-id: svn://10.0.0.236/trunk@21009 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-17 19:42:29 +00:00
buster%netscape.com
b12b27a6f0 removed unnecessary parent param from DeleteNode
git-svn-id: svn://10.0.0.236/trunk@20728 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-15 18:22:58 +00:00
buster%netscape.com
b00e86e289 splitting core editing from text editing
git-svn-id: svn://10.0.0.236/trunk@20560 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-12 17:18:04 +00:00
buster%netscape.com
ea9a76f945 changed nsIEditor to enable undo separately from Init
work in progress API changes to nsIEditor and nsEditor


git-svn-id: svn://10.0.0.236/trunk@18914 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-28 06:02:53 +00:00
buster%netscape.com
801958a339 starting to move towards a slimmed down nsIEditor.h
git-svn-id: svn://10.0.0.236/trunk@18123 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-21 01:53:10 +00:00