Page MenuHomePhabricator

Bug 1178765 - Part 1: Add backdrop-filter WebRender display items r?gw
ClosedPublic

Authored by cbrewster on Jul 23 2019, 9:00 PM.

Diff Detail

Repository
rMOZILLACENTRAL mozilla-central
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

cbrewster created this revision.Jul 23 2019, 9:00 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 23 2019, 9:01 PM
phab-bot requested review of this revision.Jul 23 2019, 9:01 PM
phab-bot changed the visibility from "Custom Policy" to "Public (No Login Required)".
phab-bot changed the edit policy from "Custom Policy" to "Restricted Project (Project)".
phab-bot removed a project: Restricted Project.

Revision updated.

cbrewster retitled this revision from Bug 1178765: Part 1 - Add backdrop-filter WebRender display items to Bug 1178765: Part 1 - Add backdrop-filter WebRender display items r?gw.Jul 25 2019, 10:06 PM

Revision updated.

Revision updated.

Revision updated.

gw requested changes to this revision.Jul 28 2019, 8:02 PM
gw added inline comments.
gfx/webrender_bindings/src/bindings.rs
2088

Let's add a link in the comment here to the spec describing what a backdrop root is.

gfx/wr/webrender_api/src/display_item.rs
108

It's not clear to me that we want / need to expose the capture as part of the public API. I haven't read the rest of the patch yet, but it seems like this should be an internal implementation detail?

This revision now requires changes to proceed.Jul 28 2019, 8:02 PM
cbrewster added inline comments.Jul 28 2019, 11:51 PM
gfx/wr/webrender_api/src/display_item.rs
108

The original reason was because the backdrop capture/filter may need to be in different places in the display list. For example, if an element has opacity applied, it forms a backdrop root. We need to make sure to capture before the backdrop root is pushed, but the filter must be pushed after the opacity stacking context is pushed so the opacity applies to the filtered backdrop.

Since I am explicitly pushing a backdrop root stacking context from Gecko and not trying to infer in WebRender, I think I can probably merge capture/filter into a single item or just add it as parameters to stacking context.

cbrewster updated this revision to Diff 138706.Jul 29 2019, 6:01 PM

Revision updated.

cbrewster updated this revision to Diff 140759.Aug 1 2019, 4:37 PM

Revision updated.

gw accepted this revision.Aug 1 2019, 11:02 PM
This revision is now accepted and ready to land.Aug 1 2019, 11:02 PM
cbrewster updated this revision to Diff 142453.Aug 5 2019, 6:11 PM

Revision updated.

cbrewster updated this revision to Diff 143942.Aug 7 2019, 8:57 PM

Revision updated.

cbrewster updated this revision to Diff 146111.Aug 12 2019, 8:13 PM

Revision updated.

cbrewster retitled this revision from Bug 1178765: Part 1 - Add backdrop-filter WebRender display items r?gw to Bug 1178765 - Part 1: Add backdrop-filter WebRender display items r?gw.Aug 12 2019, 8:13 PM

Revision updated.