Enable building gradient display items for nsDisplayBackgroundImage by default

RESOLVED DUPLICATE of bug 1359242

Status

()

RESOLVED DUPLICATE of bug 1359242
2 years ago
10 months ago

People

(Reporter: rhunt, Unassigned)

Tracking

(Blocks: 2 bugs)

unspecified
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox56 unaffected, firefox57 unaffected)

Details

(Whiteboard: [gfx-noted])

(Reporter)

Description

2 years ago
This is just a tracking bug for the work to enable gradient display item building from nsDisplayBackgroundImage by default. This is just about gradients, other work will be done for images (bug 1351242).
(Reporter)

Comment 1

2 years ago
Here is a try run with the pref and some more recent patches affecting gradients,
https://treeherder.mozilla.org/#/jobs?repo=try&revision=f33df7c2d57d521475649fd77c3c9faed1e97a94

Another try run based off the previous,
https://treeherder.mozilla.org/#/jobs?repo=try&revision=f33df7c2d57d521475649fd77c3c9faed1e97a94

There are about 40-50 reftest failures to look into. They mostly seem to be gradient tests so that is nice.
(Reporter)

Comment 2

2 years ago
I should also note, with the pref enabled I am noticing some rendering artifacts on the chrome of the browser that I am looking into.
(Reporter)

Comment 3

2 years ago
A lot of the failures were due to dithering one gradient and not the other. I've updated the try run with dithering disabled.

https://treeherder.mozilla.org/#/jobs?repo=try&revision=a9fb9840cc6c468d3275da06c420df68cc898bd5&selectedJob=88389564

It seems like there are new failures that sneak in.
(Reporter)

Updated

2 years ago
Depends on: 1355570
(Reporter)

Updated

a year ago
Blocks: 1351131
(Reporter)

Comment 4

a year ago
https://treeherder.mozilla.org/#/jobs?repo=try&revision=8babcac9491f25da2653cdb5ba3a8c4966dfcf10&selectedJob=93588720

The remaining failures:
1. border gradient tests - differences between WR path and non WR border path (~33 tests)
2. wrong positioning of bounds in nsCSSRenderingGradients (~2 tests) - have fix for this
3. background-blend-mode tests (~2 tests) - triaging this one still
4. linear gradient tests (~5 tests) - differences between WR path and canvas path
5. radial shape tests (~6 tests) - problems with -moz-transforms in reference html
6. zero length radial gradient tests (~10 tests) - have a fix for this
7. two stop tests (~2 tests) - have a fix for this

When border gradients are using WebRender, 1. should be fixed, until then it might need fuzzing. 4 is more difficult because of the canvas path. For both of them, I think the differences between the gradients should be investigated. We might be able to improve the accuracy and not need fuzzing or as much.
(Reporter)

Comment 5

a year ago
The latest try run with some PR's cherry picked from upstream webrender. I only see the rotated test and some problems with display item transforms as remaining. The rest are fuzziness issues.

https://treeherder.mozilla.org/#/jobs?repo=try&revision=81bba142e762c16ee02379f5e0e93e47d5cae092

I also kicked off a bunch of try runs with different attempts to increase accuracy through two different ways,

1. Increase the GradientData table size - doesn't seem to have a strong effect, but noticeable when the table size reaches 1024, one test resolves itself. I don't think that increasing the table size to 1024 is worth it for just that

2. Change the lerp used in filling the GradientData table size - doesn't seem to have a noticeable effect


https://treeherder.mozilla.org/#/jobs?repo=try&revision=9ddebf7e876518513b0fbfb1df136a2b74c6892d
https://treeherder.mozilla.org/#/jobs?repo=try&revision=45b1dd1bed79b0ee1dc6da75fe6e4cc8931b468c
https://treeherder.mozilla.org/#/jobs?repo=try&revision=d64ad2c2e13548ba2a3e95669357ec5ba1bc6188
https://treeherder.mozilla.org/#/jobs?repo=try&revision=ae6cc8a364a0fe8f3e781e1145cba48fc3cacbb7
Status: NEW → ASSIGNED
Priority: P3 → P1
Whiteboard: [gfx-noted] → [wr-mvp] [gfx-noted]
Target Milestone: --- → mozilla57
status-firefox56: --- → unaffected
status-firefox57: --- → unaffected
(Reporter)

Comment 6

a year ago
I'm not actively working on this.
Assignee: rhunt → nobody
Status: ASSIGNED → NEW
Priority: P1 → P2
Target Milestone: mozilla57 → ---
Hello Ryan, do you have any WIP for this bug?
Flags: needinfo?(rhunt)
(Reporter)

Comment 8

10 months ago
Hi Kevin, no any code I had for webrender gradients is checked in to central. I also don't know much about what needs to be done still because a lot has changed since I worked on this.
Flags: needinfo?(rhunt)
I think we've enable nsDisplayBackgroundImage in Bug 1359242.
Some fuzzy conditions for gradient reftest are added in that bug, but the errors are minor and I think we do need to fix it right now; therefore, I would close this bug.
Status: NEW → RESOLVED
Last Resolved: 10 months ago
Resolution: --- → DUPLICATE
Duplicate of bug: 1359242

Updated

10 months ago
Priority: P2 → --
Whiteboard: [wr-mvp] [gfx-noted] → [gfx-noted]
You need to log in before you can comment on or make changes to this bug.