mirror of
https://github.com/servo/servo.git
synced 2025-08-03 12:40:06 +01:00
Make ReRenderMsg take multiple ReRenderRequests
This commit is contained in:
parent
0f21d6be12
commit
8d56fa37be
2 changed files with 10 additions and 9 deletions
|
@ -753,9 +753,7 @@ impl IOCompositor {
|
|||
rect,
|
||||
scale.get());
|
||||
for (_pipeline_id, (chan, requests)) in request_map.move_iter() {
|
||||
for request in requests.move_iter() {
|
||||
let _ = chan.send_opt(ReRenderMsg(request));
|
||||
}
|
||||
let _ = chan.send_opt(ReRenderMsg(requests));
|
||||
}
|
||||
self.recomposite = self.recomposite || recomposite;
|
||||
}
|
||||
|
|
|
@ -59,7 +59,7 @@ pub struct ReRenderRequest {
|
|||
|
||||
pub enum Msg {
|
||||
RenderMsg(SmallVec1<RenderLayer>),
|
||||
ReRenderMsg(ReRenderRequest),
|
||||
ReRenderMsg(Vec<ReRenderRequest>),
|
||||
UnusedBufferMsg(Vec<Box<LayerBuffer>>),
|
||||
PaintPermissionGranted,
|
||||
PaintPermissionRevoked,
|
||||
|
@ -237,11 +237,14 @@ impl<C:RenderListener + Send> RenderTask<C> {
|
|||
self.epoch,
|
||||
self.render_layers.as_slice());
|
||||
}
|
||||
ReRenderMsg(ReRenderRequest { buffer_requests, scale, layer_id, epoch }) => {
|
||||
if self.epoch == epoch {
|
||||
self.render(buffer_requests, scale, layer_id);
|
||||
} else {
|
||||
debug!("renderer epoch mismatch: {:?} != {:?}", self.epoch, epoch);
|
||||
ReRenderMsg(requests) => {
|
||||
for ReRenderRequest { buffer_requests, scale, layer_id, epoch }
|
||||
in requests.move_iter() {
|
||||
if self.epoch == epoch {
|
||||
self.render(buffer_requests, scale, layer_id);
|
||||
} else {
|
||||
debug!("renderer epoch mismatch: {:?} != {:?}", self.epoch, epoch);
|
||||
}
|
||||
}
|
||||
}
|
||||
UnusedBufferMsg(unused_buffers) => {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue