Bug 107656 - Coordinated Graphics: CoordinatedLayerTreeHost::sizeDidChange uses the size in css unit, not device unit.
Summary: Coordinated Graphics: CoordinatedLayerTreeHost::sizeDidChange uses the size i...
Status: RESOLVED INVALID
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on: 105978
Blocks: 103105
  Show dependency treegraph
 
Reported: 2013-01-23 03:10 PST by Dongseong Hwang
Modified: 2013-03-10 20:01 PDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dongseong Hwang 2013-01-23 03:10:56 PST
CoordinatedLayerTreeHost::sizeDidChange set the size of WebPage to GraphicsLayer, and the size is in device units.

void CoordinatedLayerTreeHost::sizeDidChange(const WebCore::IntSize& newSize)
{
    if (m_rootLayer->size() == newSize)
        return;

    m_rootLayer->setSize(newSize);

    // If the newSize exposes new areas of the non-composited content a setNeedsDisplay is needed
    // for those newly exposed areas.
    FloatSize oldSize = m_nonCompositedContentLayer->size();
    m_nonCompositedContentLayer->setSize(newSize);
    ...
}

But all other child layer has the size in css unit.

I don't find any artifact yet, because TBS paints entire contents for non composited layer. But it is a potential bug.

In addition, I'm not sure if WebPage should use the size in device unit.
Comment 1 Dongseong Hwang 2013-01-23 03:56:31 PST
I think it may be related to Bug 104906
Comment 2 Dongseong Hwang 2013-03-10 20:01:43 PDT
Bug 111407 works in progress about refactoring CoordinatedLayerTreeHost::sizeDidChange.