Bug 107656
Summary: | Coordinated Graphics: CoordinatedLayerTreeHost::sizeDidChange uses the size in css unit, not device unit. | ||
---|---|---|---|
Product: | WebKit | Reporter: | Dongseong Hwang <dongseong.hwang> |
Component: | Layout and Rendering | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED INVALID | ||
Severity: | Normal | ||
Priority: | P2 | ||
Version: | 528+ (Nightly build) | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Bug Depends on: | 105978 | ||
Bug Blocks: | 103105 |
Dongseong Hwang
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.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Dongseong Hwang
I think it may be related to Bug 104906
Dongseong Hwang
Bug 111407 works in progress about refactoring CoordinatedLayerTreeHost::sizeDidChange.