diff options
author | Maharsh <maharsh312@gmail.com> | 2019-05-09 21:54:48 -0400 |
---|---|---|
committer | Maharsh <maharsh312@gmail.com> | 2019-05-09 21:54:48 -0400 |
commit | 1de8ddd89c49356bcf551c63dc8be1ad25c327af (patch) | |
tree | daea377cfeef1c81df1bc6d97a3948658d21da07 /components/script/dom/canvasrenderingcontext2d.rs | |
parent | 30cc087526c1d06424c770db1d851ed90a28c926 (diff) | |
download | servo-1de8ddd89c49356bcf551c63dc8be1ad25c327af.tar.gz servo-1de8ddd89c49356bcf551c63dc8be1ad25c327af.zip |
Changes for sender reciever
Diffstat (limited to 'components/script/dom/canvasrenderingcontext2d.rs')
-rw-r--r-- | components/script/dom/canvasrenderingcontext2d.rs | 31 |
1 files changed, 26 insertions, 5 deletions
diff --git a/components/script/dom/canvasrenderingcontext2d.rs b/components/script/dom/canvasrenderingcontext2d.rs index 285925b7302..67c18ff0c22 100644 --- a/components/script/dom/canvasrenderingcontext2d.rs +++ b/components/script/dom/canvasrenderingcontext2d.rs @@ -132,17 +132,38 @@ pub struct CanvasState { } impl CanvasState { - pub fn new(global: &GlobalScope) -> CanvasState { + pub fn new( + global: &GlobalScope, + size: Size2D<u64>, + ) -> CanvasState { + debug!("Creating new canvas rendering context."); let (sender, receiver) = profiled_ipc::channel(global.time_profiler_chan().clone()).unwrap(); + let script_to_constellation_chan = global.script_to_constellation_chan(); + debug!("Asking constellation to create new canvas thread."); + script_to_constellation_chan + .send(ScriptMsg::CreateCanvasPaintThread(size, sender)) + .unwrap(); let (ipc_renderer, canvas_id) = receiver.recv().unwrap(); debug!("Done."); CanvasState { - //reflector_: Reflector::new(), ipc_renderer: ipc_renderer, canvas_id: canvas_id, + } } + /*pub fn new( + global: &GlobalScope, + size: Size2D<u32>, + ) -> CanvasState { + + /*let boxed = Box::new(CanvasState::new_inherited( + global, + size, + )); + + reflect_dom_object(boxed, global, CanvasState)*/ + }*/ pub fn get_canvas_id(&self) -> CanvasId { self.canvas_id.clone() @@ -199,7 +220,7 @@ impl CanvasRenderingContext2D { base_url: ServoUrl, size: Size2D<u32>, ) -> CanvasRenderingContext2D { - debug!("Creating new canvas rendering context."); + /*debug!("Creating new canvas rendering context."); let (sender, receiver) = profiled_ipc::channel(global.time_profiler_chan().clone()).unwrap(); let script_to_constellation_chan = global.script_to_constellation_chan(); @@ -208,7 +229,7 @@ impl CanvasRenderingContext2D { .send(ScriptMsg::CreateCanvasPaintThread(size, sender)) .unwrap(); //let (canvas_state.ipc_renderer, canvas_id) = receiver.recv().unwrap(); - debug!("Done."); + debug!("Done.");*/ CanvasRenderingContext2D { reflector_: Reflector::new(), canvas: canvas.map(Dom::from_ref), @@ -220,7 +241,7 @@ impl CanvasRenderingContext2D { saved_states: DomRefCell::new(Vec::new()), origin_clean: Cell::new(true), //canvas_id: canvas_id, - canvas_state: DomRefCell::new(CanvasState::new(global)), + canvas_state: DomRefCell::new(CanvasState::new(global,Size2D::new(size.width as u64, size.height as u64))), } } |