Separate the contents of ReRenderMsg into its own type

Make a ReRenderRequest type to represent the contents of a ReRenderMsg.
Currently, ReRenderMsg just takes a single one, but it in the future it
will take multiple requests.
This commit is contained in:
Cameron Zwarich 2014-07-10 01:31:47 -07:00
parent adfd6492ad
commit 5611e34379
2 changed files with 17 additions and 8 deletions

View file

@ -50,9 +50,16 @@ pub struct RenderLayer {
pub scroll_policy: ScrollPolicy,
}
pub struct ReRenderRequest {
pub buffer_requests: Vec<BufferRequest>,
pub scale: f32,
pub layer_id: LayerId,
pub epoch: Epoch,
}
pub enum Msg {
RenderMsg(SmallVec1<RenderLayer>),
ReRenderMsg(Vec<BufferRequest>, f32, LayerId, Epoch),
ReRenderMsg(ReRenderRequest),
UnusedBufferMsg(Vec<Box<LayerBuffer>>),
PaintPermissionGranted,
PaintPermissionRevoked,
@ -230,9 +237,9 @@ impl<C:RenderListener + Send> RenderTask<C> {
self.epoch,
self.render_layers.as_slice());
}
ReRenderMsg(tiles, scale, layer_id, epoch) => {
ReRenderMsg(ReRenderRequest { buffer_requests, scale, layer_id, epoch }) => {
if self.epoch == epoch {
self.render(tiles, scale, layer_id);
self.render(buffer_requests, scale, layer_id);
} else {
debug!("renderer epoch mismatch: {:?} != {:?}", self.epoch, epoch);
}