[Webkit-unassigned] [Bug 100718] Invalidate non-composited content host when page scale factor changes

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Nov 19 17:24:24 PST 2012


https://bugs.webkit.org/show_bug.cgi?id=100718





--- Comment #20 from Tien-Ren Chen <trchen at chromium.org>  2012-11-19 17:26:22 PST ---
(In reply to comment #19)
> (From update of attachment 175073 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=175073&action=review
> 
> > Source/WebCore/page/Page.cpp:680
> > +    // Transform change on RenderView doesn't trigger repaint on non-composited contents
> 
> nit: end sentence with a period
> 
> > Source/WebCore/page/Page.cpp:681
> > +    chrome()->invalidateContentsAndRootView(IntRect(LayoutRect::infiniteRect()), false);
> 
> if you go through FrameView::repaintContentRectangle or something that calls it you'll get the layout test tracking for free, since it's implemented at that layer.  I think calling repaint() on the mainFrame()->contentRenderer() will do exactly what you want (although be sure to null-check it before dereferencing it), mind checking if that's the case?

Nope, mainFrame()->contentRenderer()->repaint() doesn't work recursively. Thus it only repaints the RenderView -- which is a dummy element and its size is the layout viewport, but repaints nothing that overflows outside of the layout viewport.

Lets use mainFrame()->view()->repaintContentRectangle()? Do I have to do null check for both mainFrame() and mainFrame()->view()?

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list