Closed Bug 418055 Opened 17 years ago Closed 17 years ago

Caret turd remains with caret browsing, clicking in input while caret was somewhere else

Categories

(Core :: DOM: Selection, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: martijn.martijn, Assigned: cpearce)

References

Details

(Keywords: regression)

Attachments

(1 file)

See bug 394473, comment 21: " I'm seeing a caret **** remaining, when I have caret browsering enabled and I click on a text input, while the caret was somewhere else in the document. The regression range was between 2007-11-09 and 2007-11-13, I think it was caused by this patch. Does patch v3 address that issue? Or should I file a new bug? (I guess so). "
Attached file Testcase
Assignee: nobody → chris
Status: NEW → ASSIGNED
Patch v2 from bug 394473 caused this bug, if I back it out, the problem goes away.
Ok, the problem is in nsTextEditorEventListener::Focus(). We turn off ignoreUserMofify before calling Caret::SetCaretDOMSelection(), but SetCaretDOMSelection() calls StopBlinking() & StartBlinking(). Stop blinking calls DrawCaret() in order to blank the old caret out, but that won't paint if ignoreUserMofify is false, so it won't erase the old caret. The solution is to turn off ignoreUserMofify after calling SetCaretDOMSelection(), not before. I'll update my patch for 394473 to include this fix.
This was fixed by patch for bug 394473.
Status: ASSIGNED → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: