Bug 23629

Summary: Caret repainting needs to do container-relative repaints
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: Layout and RenderingAssignee: Simon Fraser (smfr) <simon.fraser>
Status: RESOLVED DUPLICATE    
Severity: Normal CC: anilsson, mifenton, rwlbuis, simon.fraser
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Mac   
OS: OS X 10.5   
Bug Depends on:    
Bug Blocks: 23359    

Description Simon Fraser (smfr) 2009-01-29 15:36:59 PST
SelectionController::invalidateCaretRect() does

            view->repaintViewRectangle(caretRepaintRect(), false);
which is not going to work correctly with container-relative repainting.
Comment 1 Arvid Nilsson 2012-10-18 16:27:07 PDT
I think we just hit this:

void RenderLayerCompositor::recursiveRepaintLayerRect(RenderLayer* layer, const
IntRect& rect)
{
    // FIXME: This method does not work correctly with transforms.
    if (layer->isComposited() &&
!layer->backing()->paintsIntoCompositedAncestor())
        layer->setBackingNeedsRepaintInRect(rect);

    ...
}

(RIM PR 216154)
Comment 2 Simon Fraser (smfr) 2012-10-18 16:30:50 PDT
Bug 94985 is related.
Comment 3 Arvid Nilsson 2012-10-18 16:33:01 PDT
(In reply to comment #2)
> Bug 94985 is related.

Thank you, that one looks more specific, it's exactly what we have problem with right now.
Comment 4 Simon Fraser (smfr) 2013-01-30 12:56:51 PST
Bug 103955 fixed this.

*** This bug has been marked as a duplicate of bug 103955 ***