diff options
Diffstat (limited to 'components/canvas/raqote_backend.rs')
-rw-r--r-- | components/canvas/raqote_backend.rs | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/components/canvas/raqote_backend.rs b/components/canvas/raqote_backend.rs index 7dc84610809..1bbc23a983f 100644 --- a/components/canvas/raqote_backend.rs +++ b/components/canvas/raqote_backend.rs @@ -246,10 +246,14 @@ impl GenericDrawTarget for raqote::DrawTarget { } fn create_gradient_stops( &self, - _gradient_stops: Vec<GradientStop>, + gradient_stops: Vec<GradientStop>, _extend_mode: ExtendMode, ) -> GradientStops { - unimplemented!(); + let stops = gradient_stops + .into_iter() + .map(|item| item.as_raqote().clone()) + .collect(); + GradientStops::Raqote(stops) } fn create_path_builder(&self) -> Box<dyn GenericPathBuilder> { Box::new(PathBuilder::new()) @@ -679,3 +683,11 @@ impl SourceSurface { } } } + +impl GradientStop { + fn as_raqote(&self) -> &raqote::GradientStop { + match self { + GradientStop::Raqote(s) => s, + } + } +} |