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.
I think it may be related to Bug 104906
Bug 111407 works in progress about refactoring CoordinatedLayerTreeHost::sizeDidChange.