Closed Bug 1346982 Opened 3 years ago Closed 3 years ago

Only build WebRender DisplayItems for BoxShadowOuter when supported

Categories

(Core :: Graphics: WebRender, enhancement)

enhancement
Not set

Tracking

()

RESOLVED FIXED
mozilla55
Tracking Status
firefox55 --- fixed

People

(Reporter: rhunt, Assigned: rhunt)

Details

(Whiteboard: [gfx-noted])

Attachments

(1 file)

This is so we can flip the pref on for a demo and not have it crash with an assert.
I essentially just took the bad conditions from the CreateWebRenderCommands function and moved them to a separate function.
Attachment #8846867 - Flags: review?(mchang)
Comment on attachment 8846867 [details] [diff] [review]
boxshadow-outer.patch

Review of attachment 8846867 [details] [diff] [review]:
-----------------------------------------------------------------

::: layout/painting/nsDisplayList.cpp
@@ +4964,5 @@
> +  nsRect shadowRect = nsCSSRendering::GetShadowRect(borderRect,
> +                                                    nativeTheme,
> +                                                    mFrame);
> +
> +  RectCornerRadii borderRadii;

nit: If we have a border radius at all, return false since we clip incorrectly in WR right now.
Attachment #8846867 - Flags: review?(mchang) → review+
Settled on a better title.
Summary: Don't assert when we can't build a WR BoxShadowOuter DI → Only build WebRender DisplayItems for BoxShadowOuter when supported
Pushed by rhunt@eqrion.net:
https://hg.mozilla.org/projects/graphics/rev/569c7a783e96
Only build WebRender DisplayItems for BoxShadowOuter when supported r=mchang
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Pushed by rhunt@eqrion.net:
https://hg.mozilla.org/projects/graphics/rev/eaa70038e3f0
Fix static bustage and backwards condition r=me
You need to log in before you can comment on or make changes to this bug.