More functions in nsCSSClipPathInstance will be refactored and moved into
ShapeUtils in subsequent patches.
MozReview-Commit-ID: LmJUevY8YGr
--HG--
extra : rebase_source : 8888fa26fab541d06a3fccad9e4376bb3a66c043
|center| should be of nsPoint type since all the arguments of
ComputeObjectAnchorPoint() uses nsPoint and nsSize. We should only convert
center to Point (which is an an UnknownUnits type) for APIs requiring Point
type.
MozReview-Commit-ID: EDrQGPUZp6m
--HG--
extra : rebase_source : a5494f969dcb08c139af076e95584502f46f0b9e
More functions in nsCSSClipPathInstance will be refactored and moved into
ShapeUtils in subsequent patches.
MozReview-Commit-ID: LmJUevY8YGr
--HG--
extra : rebase_source : 8888fa26fab541d06a3fccad9e4376bb3a66c043
|center| should be of nsPoint type since all the arguments of
ComputeObjectAnchorPoint() uses nsPoint and nsSize. We should only convert
center to Point (which is an an UnknownUnits type) for APIs requiring Point
type.
MozReview-Commit-ID: EDrQGPUZp6m
--HG--
extra : rebase_source : a5494f969dcb08c139af076e95584502f46f0b9e
More functions in nsCSSClipPathInstance will be refactored and moved into
ShapeUtils in subsequent patches.
MozReview-Commit-ID: LmJUevY8YGr
--HG--
extra : rebase_source : 7cbfe60fec65833db3c7b7d7e9f3157b49b777eb
|center| should be of nsPoint type since all the arguments of
ComputeObjectAnchorPoint() uses nsPoint and nsSize. We should only convert
center to Point (which is an an UnknownUnits type) for APIs requiring Point
type.
MozReview-Commit-ID: EDrQGPUZp6m
--HG--
extra : rebase_source : 813b8cb203752e6c63b0a405473f7d0cd9dbc3e6
Simply move ComputeHTMLReferenceRect and ComputeSVGReferenceRect from
nsCSSClipPathInstance to nsLayoutUtils to reuse the code in both clip-path and
mask.
MozReview-Commit-ID: 59LofAeEhKQ
--HG--
extra : rebase_source : d974c7e2170a43242ae839c34ae5cef946d4264a
The "default" case in EnumerationToLength() is not needed anymore because
StyleShapeRadius is an enum class, which cannot have other values.
MozReview-Commit-ID: GHkPAXXxqGZ
--HG--
extra : rebase_source : 8bc51d6f21cd70688d3b968bcd0a5ef12a6e3f47
Before this patch, we did a sum-of-squares operation with nscoord variables,
which could overflow (to a negative value), and that would then produce NaN
when sqrt()'ed. We'll now avoid this by using 'double' variables & NS_hypot.
Without this patch, clip-path-circle-021.html will be rendered as a
rectangle.
MozReview-Commit-ID: 70xNvDdHUJc
--HG--
extra : rebase_source : 5d1d7eb788de9bde7bcc0dddbfc8a808fa40bea2
Before this patch, shouldApplyBasicShape will be set as true when the url of a
clip-path is not resolvable, for example:
clip-path: url("#non-exist-id");
So we call nsCSSClipPathInstance::ApplyBasicShapeClip and early return even if
the clip-path's type is StyleShapeSourceType::URL. This patch aims to correct
this wrong behavior: nsCSSClipPathInstance::ApplyBasicShapeClip shoud be used
only when the type of clip-path is StyleShapeSourceType::Shape or
StyleShapeSourceType::Box.
MozReview-Commit-ID: 1ON4dEY9pva
--HG--
extra : rebase_source : 88e89526f4b57bcbb0a1db585884d578682d118c
Change to geometry box to match the name in the spec.
https://drafts.fxtf.org/css-masking-1/#the-clip-path
MozReview-Commit-ID: 8jDTynCkJ4A
--HG--
extra : rebase_source : c2e165e320c1341012b32b48bfb03b3c9b4f56c5
The only difference between clip-path and shape-outside is the reference box
enum, so I generalize StyleClipPath to be a template struct StyleShapeSource to
accommodate both. I'll have to move all the method definition to the header to
make the linker happy.
The only logic change is calling operator==() instead of EqualURIs to compare
urls in StyleShapeSource::operator==().
MozReview-Commit-ID: LOBGVVpnnB
--HG--
extra : rebase_source : eca561500f8f8529cf6e7b5c04372a51c1b62862