Bug 19086

Summary: REGRESSION (r28519-r28535): Caret doesn't paint past the right edge of a block
Product: WebKit Reporter: mitz
Component: Layout and RenderingAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: ddkilzer, xslf
Priority: P1 Keywords: GoogleBug, HasReduction, InRadar, Regression, ReviewedForRadar
Version: 528+ (Nightly build)   
Hardware: Macintosh   
OS: OS X 10.5   
URL: data:text/html,%3Cdiv%20contenteditable%20style=%22text-align:right%22%3E%3C/div%3E
Attachments:
Description Flags
Revert part of r28523 darin: review+

Description mitz 2008-05-15 13:39:25 PDT
When the caret position is past the right edge of a block, it does not always paint (it paints when it moves or changes, but not when it should blink). This happens at the end of a line of right-aligned text (or the beginning of right-aligned RTL text).

To reproduce:
1. Open the URL
2. Click near the top of the document
3. Type some text
Comment 1 mitz 2008-05-25 10:14:51 PDT
<rdar://problem/5962254>
Comment 2 mitz 2008-05-25 10:15:05 PDT
*** Bug 19244 has been marked as a duplicate of this bug. ***
Comment 3 mitz 2008-05-25 10:19:21 PDT
Probably a result of removing the padding in <http://trac.webkit.org/changeset/28523>.
Comment 4 David Kilzer (:ddkilzer) 2008-05-25 11:05:43 PDT
Internal autospade says:

Works: r28519  Fails: r28535
Comment 5 mitz 2008-05-25 13:00:49 PDT
Created attachment 21339 [details]
Revert part of r28523

This patch fixes the regression. Its weakness is that it only covers cases where the caret is within one pixel from the block, but I could not come up with a reasonable general solution. I am not sure that it is ever valid for the caret to be more than one pixel away from the block.
Comment 6 Darin Adler 2008-05-25 13:09:14 PDT
Comment on attachment 21339 [details]
Revert part of r28523

+    // Ensure that the dirty rect intersects the blcok that paints the caret even in the case where

Typo "blcok".

r=me
Comment 7 mitz 2008-05-25 13:15:02 PDT
Fixed in <http://trac.webkit.org/changeset/34127>.