mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
gfx: Split the paint messages into layout and chrome messages, and make
the layout messages serializable.
This commit is contained in:
parent
f041e1aa60
commit
3be5bbbaa3
6 changed files with 97 additions and 75 deletions
|
@ -4,8 +4,7 @@
|
|||
|
||||
use surface_map::SurfaceMap;
|
||||
use compositor_layer::{CompositorData, CompositorLayer, WantsScrollEventsFlag};
|
||||
use compositor_task::{CompositorEventListener, CompositorProxy, CompositorReceiver};
|
||||
use compositor_task::Msg;
|
||||
use compositor_task::{CompositorEventListener, CompositorProxy, CompositorReceiver, Msg};
|
||||
use constellation::SendableFrameTree;
|
||||
use pipeline::CompositionPipeline;
|
||||
use scrolling::ScrollingTimerProxy;
|
||||
|
@ -18,8 +17,7 @@ use euclid::rect::{Rect, TypedRect};
|
|||
use euclid::scale_factor::ScaleFactor;
|
||||
use euclid::size::{Size2D, TypedSize2D};
|
||||
use gfx_traits::color;
|
||||
use gfx::paint_task::Msg as PaintMsg;
|
||||
use gfx::paint_task::PaintRequest;
|
||||
use gfx::paint_task::{ChromeToPaintMsg, PaintRequest};
|
||||
use gleam::gl::types::{GLint, GLsizei};
|
||||
use gleam::gl;
|
||||
use ipc_channel::ipc;
|
||||
|
@ -1306,8 +1304,8 @@ impl<Window: WindowMethods> IOCompositor<Window> {
|
|||
self.convert_buffer_requests_to_pipeline_requests_map(layers_and_requests);
|
||||
|
||||
for (pipeline_id, requests) in pipeline_requests.into_iter() {
|
||||
let msg = PaintMsg::Paint(requests, self.frame_tree_id);
|
||||
let _ = self.get_pipeline(pipeline_id).paint_chan.send(msg);
|
||||
let msg = ChromeToPaintMsg::Paint(requests, self.frame_tree_id);
|
||||
let _ = self.get_pipeline(pipeline_id).chrome_to_paint_chan.send(msg);
|
||||
}
|
||||
|
||||
true
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue