Closed Bug 132133 Opened 22 years ago Closed 22 years ago

[PATCH]Text Area: deleting last char on line can move caret to prior line

Categories

(Core :: DOM: Editor, defect, P1)

defect

Tracking

()

VERIFIED FIXED
mozilla1.0

People

(Reporter: mozeditor, Assigned: mozeditor)

References

Details

(Keywords: embed, Whiteboard: EDITORBASE+[adt2] FIXINHAND; need a=)

Attachments

(2 files)

In bug 92124, Shotaro Kamio wrote:

Created an attachment (id=74689)
test case with no mozBR

Try to delete the last line on this test case.
This case has no relation with HINTRIGHT.
So, all you have to do is to delete the last line with BS or DEL key.

The problem of this case comes from the lack of last mozBR.
Attached file test case
bringing over skamio's test case from bug 92124
nominating: text area weirdness is high priority prob.
Status: NEW → ASSIGNED
Keywords: nsbeta1
Priority: -- → P1
Whiteboard: EDITORBASE
Target Milestone: --- → mozilla1.0
Shotaro, I have looked at the patch you provided (in 92124).  Your' diagnosis of 
the problem is absolutely correct, but I agree that the correct thing to do is to 
put a MozBR at the end of the textarea.  But I think checking for empty text 
nodes is the wrong way to go about it.

I'll try to post a new patch shortly.  Thanks for your help discovering and 
diagnosing this problem!
Blocks: 108120
worksforme 2002032112 winblows netscape build
Status: ASSIGNED → RESOLVED
Closed: 22 years ago
Resolution: --- → WORKSFORME
I still see this bug in my build from today! REOPENING.
Status: RESOLVED → REOPENED
Resolution: WORKSFORME → ---
Status: REOPENED → ASSIGNED
plusing
Keywords: nsbeta1embed, nsbeta1+
Whiteboard: EDITORBASE → EDITORBASE+[adt2]
Whiteboard: EDITORBASE+[adt2] → EDITORBASE+[adt2] FIXINHAND; need r,sr,a=
Force plaintext editors to have a trailing br.
Comment on attachment 77017 [details] [diff] [review]
patch to nsTextEditRules.h,cpp

r=glazman
Attachment #77017 - Flags: review+
Summary: Text Area: deleting last char on line can move caret to prior line → [PATCH]Text Area: deleting last char on line can move caret to prior line
Whiteboard: EDITORBASE+[adt2] FIXINHAND; need r,sr,a= → EDITORBASE+[adt2] FIXINHAND; need sr,a=
Comment on attachment 77017 [details] [diff] [review]
patch to nsTextEditRules.h,cpp

Should CreateTrailingBRIfNeeded() only work when these flags are lit
(eEditorWidgetMask and eEditorWidgetMask) and eEditorSingleLineMask isn't? In
otherwords, only when we're in a multi-lined textarea. I'm just worried about
potential single-line textfield caret navigation and output problems. I may
just be paranoid.

If we assume CreateBogusNodeIfNeeded() is called first, how can we have
!lastChild in CreateTrailingBRIfNeeded()? Shouldn't that be an error if it is
null?
Comment on attachment 77017 [details] [diff] [review]
patch to nsTextEditRules.h,cpp

sr=kin@netscape.com as long as this only impacts textareas. Please test form
submission and widget output.
Attachment #77017 - Flags: superreview+
Whiteboard: EDITORBASE+[adt2] FIXINHAND; need sr,a= → EDITORBASE+[adt2] FIXINHAND; need a=
adt1.0.0
Keywords: adt1.0.0, approval
Comment on attachment 77017 [details] [diff] [review]
patch to nsTextEditRules.h,cpp

a=asa (on behalf of drivers) for checkin to the 1.0 trunk
Attachment #77017 - Flags: approval+
adt1.0.0+ (on ADT's behalf) approval for checkin into 1.0.
Keywords: adt1.0.0adt1.0.0+
fix landed on trunk
Status: ASSIGNED → RESOLVED
Closed: 22 years ago22 years ago
Resolution: --- → FIXED
verified in 4/8 build.
Status: RESOLVED → VERIFIED
This landed before branch cut.  Hence: fixed1.0.0
Keywords: approvalfixed1.0.0
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: