--- a/gfx/webrender_bindings/src/bindings.rs
+++ b/gfx/webrender_bindings/src/bindings.rs
@@ -27,16 +27,18 @@ type WrGlyphInstance = GlyphInstance;
type WrIdNamespace = IdNamespace;
type WrImageFormat = ImageFormat;
type WrImageRendering = ImageRendering;
type WrImageKey = ImageKey;
type WrMixBlendMode = MixBlendMode;
type WrPipelineId = PipelineId;
type WrRenderedEpochs = Vec<(WrPipelineId, WrEpoch)>;
type WrRenderer = Renderer;
+type WrSideOffsets2Du32 = WrSideOffsets2D<u32>;
+type WrSideOffsets2Df32 = WrSideOffsets2D<f32>;
static ENABLE_RECORDING: bool = false;
// This macro adds some checks to make sure we notice when the memory representation of
// types change.
macro_rules! check_ffi_type {
($check_sizes_match:ident struct $TypeName:ident as ($T1:ident, $T2:ident)) => (
fn $check_sizes_match() {
@@ -305,17 +307,17 @@ impl WrBorderWidths
}
}
#[repr(C)]
pub struct WrNinePatchDescriptor
{
width: u32,
height: u32,
- slice: WrSideOffsets2D<u32>,
+ slice: WrSideOffsets2Du32,
}
impl WrNinePatchDescriptor
{
pub fn to_nine_patch_descriptor(&self) -> NinePatchDescriptor {
NinePatchDescriptor {
width: self.width,
height: self.height,
@@ -1265,17 +1267,17 @@ pub extern "C" fn wr_dp_push_border(stat
#[no_mangle]
pub extern "C" fn wr_dp_push_border_image(state: &mut WrState,
rect: WrRect,
clip: WrClipRegion,
widths: WrBorderWidths,
image: WrImageKey,
patch: WrNinePatchDescriptor,
- outset: WrSideOffsets2D<f32>,
+ outset: WrSideOffsets2Df32,
repeat_horizontal: WrRepeatMode,
repeat_vertical: WrRepeatMode) {
assert!( unsafe { is_in_main_thread() });
let border_details = BorderDetails::Image(ImageBorder {
image_key: image,
patch: patch.to_nine_patch_descriptor(),
outset: outset.to_side_offsets_2d(),
repeat_horizontal: repeat_horizontal.to_repeat_mode(),
@@ -1289,17 +1291,17 @@ pub extern "C" fn wr_dp_push_border_imag
}
#[no_mangle]
pub extern "C" fn wr_dp_push_border_gradient(state: &mut WrState, rect: WrRect, clip: WrRect,
widths: WrBorderWidths,
start_point: WrPoint, end_point: WrPoint,
stops: *const WrGradientStop, stops_count: usize,
extend_mode: WrGradientExtendMode,
- outset: WrSideOffsets2D<f32>) {
+ outset: WrSideOffsets2Df32) {
assert!( unsafe { is_in_main_thread() });
let stops = WrGradientStop::to_gradient_stops(unsafe { slice::from_raw_parts(stops, stops_count) });
let clip_region = state.frame_builder.dl_builder.new_clip_region(&clip.to_rect(), Vec::new(), None);
let border_details = BorderDetails::Gradient(GradientBorder {
gradient: state.frame_builder.dl_builder.create_gradient(
start_point.to_point(), end_point.to_point(),
stops, extend_mode.to_gradient_extend_mode()),
outset: outset.to_side_offsets_2d(),
@@ -1313,17 +1315,17 @@ pub extern "C" fn wr_dp_push_border_grad
#[no_mangle]
pub extern "C" fn wr_dp_push_border_radial_gradient(state: &mut WrState, rect: WrRect, clip: WrRect,
widths: WrBorderWidths,
center: WrPoint,
radius: WrSize,
stops: *const WrGradientStop, stops_count: usize,
extend_mode: WrGradientExtendMode,
- outset: WrSideOffsets2D<f32>) {
+ outset: WrSideOffsets2Df32) {
assert!( unsafe { is_in_main_thread() });
let stops = WrGradientStop::to_gradient_stops(unsafe { slice::from_raw_parts(stops, stops_count) });
let clip_region = state.frame_builder.dl_builder.new_clip_region(&clip.to_rect(), Vec::new(), None);
let border_details = BorderDetails::RadialGradient(RadialGradientBorder {
gradient: state.frame_builder.dl_builder.create_radial_gradient(center.to_point(),
radius.to_size(),
stops,
extend_mode.to_gradient_extend_mode()),