Open Bug 668549 Opened 13 years ago Updated 1 year ago

caret "eats" part of last character in text input

Categories

(Core :: Graphics, defect)

x86_64
Linux
defect

Tracking

()

People

(Reporter: arno, Unassigned)

References

Details

(Keywords: regression)

Attachments

(3 files)

Attached file testcase
Hi,
If I have a text input (or textarea), whose margin is 0.5px (or 1.5px or whatever.5px), the column of text just before the caret is not displayed.
The bug only happens with a fixed background.
Attached image screenshot
screenshot of what I see with testcase.
Screenshot of testcase where I removed the background-attachment line.
Note that this time, caret is close enough of x letter to touch it.
I can reproduce it in a recent Nightly, but it works fine in Fx 4.0.1 (Linux64)
First step would be to find a regression range to identify the guilty person :-)
I ran mozregression twice, and got those different results:
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=0cf4fa02c0f2&tochange=1f25c65e9335
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=836aa9658341&tochange=831f8e040f38

May be the bug is caused by #562746 (updating cairo to 1.10).
Also I've tried with a custom webbrowser running a gecko 2.0 engine build with 
--enable-system-cairo my system cairo version is 1.10
That information seems to confirm the relation with cairo 1.10
The Cairo update (bug 562746) is in both those ranges (it was backed out
the first time).  Also confirmed the range in Linux64 Nightly builds:
2011-05-27-03 works --  2011-05-28-03 fails.
Blocks: 562746
Component: Layout → Graphics
QA Contact: layout → thebes
The last pixel-column of text is initially displayed but is erased when the caret is erased.  Placing the caret "between" the two characters demonstrates that it is only the pixel-column to the left of the caret that is not invalidated/painted correctly.  The pixels "under" the caret are repainted correctly.
Depends on: 678505
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.