mirror of
https://github.com/servo/servo.git
synced 2025-08-05 13:40:08 +01:00
style: Use cbindgen for basic_shape::FillRule.
Just a minor fix to use cbindgen to avoid the conversion between basic_shape::FillRule and mozilla::StyleFillRule. Differential Revision: https://phabricator.services.mozilla.com/D4171
This commit is contained in:
parent
e46daa09ea
commit
68ab6217bd
3 changed files with 12 additions and 8 deletions
|
@ -23,5 +23,11 @@ derive_helper_methods = true
|
||||||
|
|
||||||
[export]
|
[export]
|
||||||
prefix = "Style"
|
prefix = "Style"
|
||||||
include = ["StyleDisplay", "StyleAppearance", "StyleDisplayMode", "StylePathCommand"]
|
include = [
|
||||||
|
"StyleAppearance",
|
||||||
|
"StyleDisplay",
|
||||||
|
"StyleDisplayMode",
|
||||||
|
"StyleFillRule",
|
||||||
|
"StylePathCommand"
|
||||||
|
]
|
||||||
item_types = ["enums", "structs", "typedefs"]
|
item_types = ["enums", "structs", "typedefs"]
|
||||||
|
|
|
@ -4986,10 +4986,10 @@ fn static_assert() {
|
||||||
pub fn set_${ident}(&mut self, v: longhands::${ident}::computed_value::T) {
|
pub fn set_${ident}(&mut self, v: longhands::${ident}::computed_value::T) {
|
||||||
use gecko_bindings::bindings::{Gecko_NewBasicShape, Gecko_DestroyShapeSource};
|
use gecko_bindings::bindings::{Gecko_NewBasicShape, Gecko_DestroyShapeSource};
|
||||||
use gecko_bindings::structs::{StyleBasicShape, StyleBasicShapeType, StyleShapeSourceType};
|
use gecko_bindings::structs::{StyleBasicShape, StyleBasicShapeType, StyleShapeSourceType};
|
||||||
use gecko_bindings::structs::{StyleFillRule, StyleGeometryBox, StyleShapeSource};
|
use gecko_bindings::structs::{StyleGeometryBox, StyleShapeSource};
|
||||||
use gecko::conversions::basic_shape::set_corners_from_radius;
|
use gecko::conversions::basic_shape::set_corners_from_radius;
|
||||||
use gecko::values::GeckoStyleCoordConvertible;
|
use gecko::values::GeckoStyleCoordConvertible;
|
||||||
use values::generics::basic_shape::{BasicShape, FillRule, ShapeSource};
|
use values::generics::basic_shape::{BasicShape, ShapeSource};
|
||||||
|
|
||||||
let ref mut ${ident} = self.gecko.${gecko_ffi_name};
|
let ref mut ${ident} = self.gecko.${gecko_ffi_name};
|
||||||
|
|
||||||
|
@ -5083,11 +5083,8 @@ fn static_assert() {
|
||||||
coord.0.to_gecko_style_coord(&mut shape.mCoordinates[2 * i]);
|
coord.0.to_gecko_style_coord(&mut shape.mCoordinates[2 * i]);
|
||||||
coord.1.to_gecko_style_coord(&mut shape.mCoordinates[2 * i + 1]);
|
coord.1.to_gecko_style_coord(&mut shape.mCoordinates[2 * i + 1]);
|
||||||
}
|
}
|
||||||
shape.mFillRule = if poly.fill == FillRule::Evenodd {
|
// unsafe: cbindgen ensures the representation is the same.
|
||||||
StyleFillRule::Evenodd
|
shape.mFillRule = unsafe { transmute(poly.fill) };
|
||||||
} else {
|
|
||||||
StyleFillRule::Nonzero
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -138,6 +138,7 @@ pub struct PolygonCoord<LengthOrPercentage>(pub LengthOrPercentage, pub LengthOr
|
||||||
#[cfg_attr(feature = "servo", derive(Deserialize, Serialize))]
|
#[cfg_attr(feature = "servo", derive(Deserialize, Serialize))]
|
||||||
#[derive(Clone, Copy, Debug, Eq, MallocSizeOf, Parse, PartialEq,
|
#[derive(Clone, Copy, Debug, Eq, MallocSizeOf, Parse, PartialEq,
|
||||||
SpecifiedValueInfo, ToComputedValue, ToCss)]
|
SpecifiedValueInfo, ToComputedValue, ToCss)]
|
||||||
|
#[repr(u8)]
|
||||||
pub enum FillRule {
|
pub enum FillRule {
|
||||||
Nonzero,
|
Nonzero,
|
||||||
Evenodd,
|
Evenodd,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue