Closed Bug 1325590 Opened 7 years ago Closed 14 days ago

Get rid of LAYER_SVG_EFFECTS for masks entirely

Categories

(Core :: Web Painting, defect)

defect

Tracking

()

RESOLVED INVALID

People

(Reporter: u459114, Unassigned)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

Bug 1325550 Comment 7:
LAYER_INACTIVE means that we use a mask layer in the temporary BasicLayerManager that's created for the inactive display item. So we will apply the mask on the main thread during painting, and not on the Compositor.
Applying mask layers in BasicLayerManager does very similar things to what nsSVGIntegrationUtils::PaintMaskAndClipPath does. There's not a good reason that it should be any slower. We should find out why it's slower and fix it, so that we can get rid of LAYER_SVG_EFFECTS for masks entirely.

In another word, we should figure out why applying mask layer in BasicLayerManager  is slower than nsSVGIntegrationUtils::PaintMaskAndClipPath
And then use LAYER_SVG_EFFECTS with nsDisplayFilter only(rename to LAYER_FILTER?)
Compare perf between BasicLayerManager::PushGroupForLayer and nsSVGIntegrationUtils::CreateAndPaintMask
(In reply to C.J. Ku[:cjku](UTC+8) from comment #5)
> https://treeherder.mozilla.org/#/jobs?repo=try&revision=e26d91a3b7b9
Still need to fix opacity assertion, overall looks good, except fuzzy around shape edge
Assignee: cku → nobody
Component: Layout: View Rendering → Layout: Web Painting
Severity: normal → S3

LAYER_SVG_EFFECTS doesn't seem to be in the codebase anymore (at least I don't see it on searchfox), so I think this is no longer a valid bug.

Status: NEW → RESOLVED
Closed: 14 days ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: