Pass repeating gradients to webrender.

This commit is contained in:
Pyfisch 2017-04-17 11:08:37 +02:00
parent 803bc0395c
commit 1c4ae53a88

View file

@ -370,10 +370,15 @@ impl WebRenderDisplayItemConverter for DisplayItem {
let start_point = item.gradient.start_point.to_pointf();
let end_point = item.gradient.end_point.to_pointf();
let clip = item.base.clip.to_clip_region(builder);
let extend_mode = if item.gradient.repeating {
ExtendMode::Repeat
} else {
ExtendMode::Clamp
};
let gradient = builder.create_gradient(start_point,
end_point,
item.gradient.stops.clone(),
ExtendMode::Clamp);
extend_mode);
builder.push_gradient(rect,
clip,
gradient,
@ -385,10 +390,15 @@ impl WebRenderDisplayItemConverter for DisplayItem {
let center = item.gradient.center.to_pointf();
let radius = item.gradient.radius.to_sizef();
let clip = item.base.clip.to_clip_region(builder);
let extend_mode = if item.gradient.repeating {
ExtendMode::Repeat
} else {
ExtendMode::Clamp
};
let gradient = builder.create_radial_gradient(center,
radius,
item.gradient.stops.clone(),
ExtendMode::Clamp);
extend_mode);
builder.push_radial_gradient(rect,
clip,
gradient,