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
outside of any selection batching (didn't work when inside a batch).
r=jfrancis; part of Mike's 18046 fixes which are a=chofmann.
git-svn-id: svn://10.0.0.236/trunk@55995 18797224-902f-48f8-a5cc-f745e15eee43
r=rods
a=chofmann
changed CanUndo and CanRedo to return the right value. They were returning the opposite of what they ought to have returned.
git-svn-id: svn://10.0.0.236/trunk@55865 18797224-902f-48f8-a5cc-f745e15eee43
Triggered from key events. Untested since the nsISelectionController
implementation isn't in yet (bug 18046), but key events do call
the stub routines. r=mjudge
git-svn-id: svn://10.0.0.236/trunk@55085 18797224-902f-48f8-a5cc-f745e15eee43
Checkin addressees these bugzilla bugs:
2073 & 12337 - whitespace trouble when typing (you can end up with all nbsp's instead of spaces)
16715 - caret gone or wrong after hitting return
16988 - aim foiled by our mozDIVs
17908 - enter at end of document does nothing
16085 - 4.x mail replied foiled by mozDIVs
19368 - inline style lost after typing return
17059 - "normal" made a paragraph, but typing made a div. Now they both just use direct text in the body (or wherever)
18717 - exiting list gives UBER caret (note: this will only be fixed most of the time, not all)
17778 - cant type beside an image (it ends up above or below it) - this was a rather strange ramification of the old mozDIV
rules which are now gone.
git-svn-id: svn://10.0.0.236/trunk@54462 18797224-902f-48f8-a5cc-f745e15eee43
but no editor is actually attached, so no editing is possible. Next step is
to detect the error case and stop the document load altogether.
git-svn-id: svn://10.0.0.236/trunk@53219 18797224-902f-48f8-a5cc-f745e15eee43
in anticipation of nixing NS_COMFALSE in the near future.
r=scc (please contact him should there be any build issues)
git-svn-id: svn://10.0.0.236/trunk@51977 18797224-902f-48f8-a5cc-f745e15eee43
2. add if code and return NS_ERROR_NULL_POINTER if the ptr is null
3. add code to check return value
r=myself
git-svn-id: svn://10.0.0.236/trunk@50984 18797224-902f-48f8-a5cc-f745e15eee43
so trivial, no reviewer needed
fixed my part of bug 5403 (Services improperly released: Use NS_WITH_SERVICE)
a handful of subtle error handling bugs were fixed as a side effect
r=Akkana
git-svn-id: svn://10.0.0.236/trunk@50222 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
Now, only \n are held in the content model, making the original
implementation correct.
a=chofmann, r=akkana
git-svn-id: svn://10.0.0.236/trunk@48914 18797224-902f-48f8-a5cc-f745e15eee43
removed optimization where we searched text strings and made our own guess about
whether it was editable or not. Now we just trust layout, if there's a frame, it's editable.
git-svn-id: svn://10.0.0.236/trunk@48881 18797224-902f-48f8-a5cc-f745e15eee43
if the aggregate transaction is empty, don't execute it. It's not technically
illegal, but it's a waste, and it causes the assert.
git-svn-id: svn://10.0.0.236/trunk@48610 18797224-902f-48f8-a5cc-f745e15eee43