[release/2.x] Add some new overloads for better compat #2810
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of Change
In SkiaSharp 3.x, the overloads no longer take the
SKImageFilter.CropRect
and instead use a plainSKRect
.This PR adds a bunch of overloads into the 2.x series that are present in 3.x - notably the
SKImageFilter.CropRect
toSKRect
as well as some others.CreateShader
is also new and reallyCreatePaint
is aCreateShader
under the hood in C++.For the variations of
CreateMatrix
with the differentin
overloads, I will add this back into 3.x using the mechanism in #2789Instead of a single overload with all the default parameters, the new overloads avoid defaults so we can not require nullable structs as well as not use the
CropRect
class if the crop rect is not in use.After this PR lands, libraries that want to be compatible with 3.x will need to:
SKRect
overloadsCreateShader
ReadOnlySpan
overloadsBugs Fixed
API Changes
None.
Behavioral Changes
None.
Required skia PR
None.
PR Checklist