Bug 1455488. Blend modes are container items. r=mstange
BLEND_MODE and BLEND_CONTAINER wrap items so their bounds can change.
We need to account for that like we do with OPACTIY etc.
--- a/gfx/layers/wr/WebRenderCommandBuilder.cpp
+++ b/gfx/layers/wr/WebRenderCommandBuilder.cpp
@@ -214,16 +214,18 @@ struct Grouper
static bool
IsContainerLayerItem(nsDisplayItem* aItem)
{
switch (aItem->GetType()) {
case DisplayItemType::TYPE_TRANSFORM:
case DisplayItemType::TYPE_LAYER_EVENT_REGIONS:
case DisplayItemType::TYPE_OPACITY:
case DisplayItemType::TYPE_FILTER:
+ case DisplayItemType::TYPE_BLEND_CONTAINER:
+ case DisplayItemType::TYPE_BLEND_MODE:
case DisplayItemType::TYPE_MASK: {
return true;
}
default: {
return false;
}
}
}