author | Bogdan Tara <btara@mozilla.com> |
Sun, 20 Jan 2019 11:42:58 +0200 | |
changeset 454619 | 219bc50b5cd5ac8b374cac6531ece44dddf4bfff |
parent 454617 | 6aa3c460ff66470e1571059f33d08f8355ec9528 (current diff) |
parent 454618 | 8a6882cfdfe50002f294e8e6609893e7f364168b (diff) |
child 454622 | 70857e6af679bed8ffcf7f4c9ae248bc26424c15 |
push id | 35404 |
push user | btara@mozilla.com |
push date | Sun, 20 Jan 2019 09:43:40 +0000 |
treeherder | mozilla-central@219bc50b5cd5 [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | merge |
milestone | 66.0a1 |
first release with | nightly linux32
219bc50b5cd5
/
66.0a1
/
20190120094340
/
files
nightly linux64
219bc50b5cd5
/
66.0a1
/
20190120094340
/
files
nightly mac
219bc50b5cd5
/
66.0a1
/
20190120094340
/
files
nightly win32
219bc50b5cd5
/
66.0a1
/
20190120094340
/
files
nightly win64
219bc50b5cd5
/
66.0a1
/
20190120094340
/
files
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
releases | nightly linux32
66.0a1
/
20190120094340
/
pushlog to previous
nightly linux64
66.0a1
/
20190120094340
/
pushlog to previous
nightly mac
66.0a1
/
20190120094340
/
pushlog to previous
nightly win32
66.0a1
/
20190120094340
/
pushlog to previous
nightly win64
66.0a1
/
20190120094340
/
pushlog to previous
|
--- a/gfx/layers/wr/WebRenderCommandBuilder.cpp +++ b/gfx/layers/wr/WebRenderCommandBuilder.cpp @@ -1306,37 +1306,42 @@ RenderRootStateManager* WebRenderCommand void WebRenderCommandBuilder::DoGroupingForDisplayList( nsDisplayList* aList, nsDisplayItem* aWrappingItem, nsDisplayListBuilder* aDisplayListBuilder, const StackingContextHelper& aSc, wr::DisplayListBuilder& aBuilder, wr::IpcResourceUpdateQueue& aResources) { if (!aList->GetBottom()) { return; } + GP("DoGroupingForDisplayList\n"); + mClipManager.BeginList(aSc); Grouper g(mClipManager); + int32_t appUnitsPerDevPixel = aWrappingItem->Frame()->PresContext()->AppUnitsPerDevPixel(); - GP("DoGroupingForDisplayList\n"); g.mDisplayListBuilder = aDisplayListBuilder; RefPtr<WebRenderGroupData> groupData = CreateOrRecycleWebRenderUserData<WebRenderGroupData>(aWrappingItem); + bool snapped; nsRect groupBounds = aWrappingItem->GetBounds(aDisplayListBuilder, &snapped); DIGroup& group = groupData->mSubGroup; - auto p = group.mGroupBounds; - auto q = groupBounds; + gfx::Size scale = aSc.GetInheritedScale(); + GP("Inherrited scale %f %f\n", scale.width, scale.height); + auto trans = ViewAs<LayerPixel>(aSc.GetSnappingSurfaceTransform().GetTranslation()); auto snappedTrans = LayerIntPoint::Floor(trans); LayerPoint residualOffset = trans - snappedTrans; - GP("Inherrited scale %f %f\n", scale.width, scale.height); + auto p = group.mGroupBounds; + auto q = groupBounds; GP("Bounds: %d %d %d %d vs %d %d %d %d\n", p.x, p.y, p.width, p.height, q.x, q.y, q.width, q.height); if (!group.mGroupBounds.IsEqualEdges(groupBounds) || group.mAppUnitsPerDevPixel != appUnitsPerDevPixel || group.mScale != scale || group.mResidualOffset != residualOffset) { GP("Property change. Deleting blob\n"); if (group.mAppUnitsPerDevPixel != appUnitsPerDevPixel) {