I think this will be slightly faster if you add `#[deriving(Eq)]` to `render_state` and just say `composite_ready = render_state == IdleRenderState`.

Also a comment on `composite_ready` saying what it's doing would be nice.