Closed Bug 1690680 Opened 5 years ago Closed 3 years ago

Remove usage of SkClipOp::kReplace_deprecated

Categories

(Core :: Graphics, task)

task

Tracking

()

RESOLVED FIXED

People

(Reporter: lsalzman, Unassigned)

References

(Blocks 1 open bug)

Details

DrawTargetSkia::CopySurface currently relies upon SkClipOp::kReplace_deprecated to bypass clipping as required by CopySurface. However, given that this op is deprecated and eventually subject to removal, there is no guarantee we can rely upon this in the future if we update Skia.

writePixels might be a viable alternative here, but SkBitmap dropped support for anything but CPU surfaces, making this not viable if we want to ever support SkiaGL again.

In the event we do support SkiaGL, we might be able to impose the requirement that if the surface being copied is a GPU surface, the DT has no clips on it so that we don't need to use kReplace. Given where and how we use CopySurface, this appears a reasonable restriction. Otherwise, we could fall back to writePixels and require that it be a CPU surface. But we can delay this until and if Skia deletes this clip op or it proves broken.

Severity: -- → S3
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.