mirror of
https://github.com/servo/servo.git
synced 2025-08-09 23:45:35 +01:00
Add unique canvas IDs to all canvas operations.
This commit is contained in:
parent
a69eceefc9
commit
8a1590efc6
13 changed files with 334 additions and 155 deletions
|
@ -1800,7 +1800,8 @@ impl FragmentDisplayListBuilding for Fragment {
|
|||
let ipc_renderer = ipc_renderer.lock().unwrap();
|
||||
let (sender, receiver) = ipc::channel().unwrap();
|
||||
ipc_renderer
|
||||
.send(CanvasMsg::FromLayout(FromLayoutMsg::SendData(sender)))
|
||||
.send(CanvasMsg::FromLayout(FromLayoutMsg::SendData(sender),
|
||||
canvas_fragment_info.canvas_id.clone()))
|
||||
.unwrap();
|
||||
(receiver.recv().unwrap().image_key, PixelFormat::BGRA8)
|
||||
},
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
use ServoArc;
|
||||
use app_units::Au;
|
||||
use canvas_traits::canvas::CanvasMsg;
|
||||
use canvas_traits::canvas::{CanvasMsg, CanvasId};
|
||||
use context::{LayoutContext, with_thread_local_font_context};
|
||||
use display_list::ToLayout;
|
||||
use euclid::{Point2D, Vector2D, Rect, Size2D};
|
||||
|
@ -345,6 +345,7 @@ pub struct CanvasFragmentInfo {
|
|||
pub source: CanvasFragmentSource,
|
||||
pub dom_width: Au,
|
||||
pub dom_height: Au,
|
||||
pub canvas_id: CanvasId,
|
||||
}
|
||||
|
||||
impl CanvasFragmentInfo {
|
||||
|
@ -362,6 +363,7 @@ impl CanvasFragmentInfo {
|
|||
source: source,
|
||||
dom_width: Au::from_px(data.width as i32),
|
||||
dom_height: Au::from_px(data.height as i32),
|
||||
canvas_id: data.canvas_id,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue