mirror of
https://github.com/servo/servo.git
synced 2025-06-22 08:08:59 +01:00
This removes paint threads, rust-layers dependency, and changes optional webrender types to be required. The use_webrender option has been removed, however I've left the "-w" command line option in place so that wpt runner can continue to pass that. Once it's removed from there we can also remove the -w option. Once this stage is complete, it should be fine to change the display list building code to generate webrender display lists directly and avoid the conversion step.
61 lines
1.5 KiB
Rust
61 lines
1.5 KiB
Rust
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#![feature(box_syntax)]
|
|
#![feature(custom_derive)]
|
|
#![feature(plugin)]
|
|
#![feature(proc_macro)]
|
|
#![plugin(plugins)]
|
|
|
|
#![deny(unsafe_code)]
|
|
|
|
extern crate euclid;
|
|
extern crate gfx_traits;
|
|
extern crate gleam;
|
|
extern crate image;
|
|
extern crate ipc_channel;
|
|
#[macro_use]
|
|
extern crate log;
|
|
extern crate msg;
|
|
extern crate net_traits;
|
|
#[macro_use]
|
|
extern crate profile_traits;
|
|
extern crate script_traits;
|
|
#[macro_use]
|
|
extern crate serde_derive;
|
|
extern crate style_traits;
|
|
extern crate time;
|
|
extern crate url;
|
|
#[macro_use]
|
|
extern crate util;
|
|
extern crate webrender;
|
|
extern crate webrender_traits;
|
|
|
|
pub use compositor_thread::CompositorProxy;
|
|
pub use compositor::IOCompositor;
|
|
use euclid::size::TypedSize2D;
|
|
use ipc_channel::ipc::IpcSender;
|
|
use msg::constellation_msg::PipelineId;
|
|
use script_traits::{ConstellationControlMsg, LayoutControlMsg};
|
|
use style_traits::PagePx;
|
|
|
|
mod compositor;
|
|
pub mod compositor_thread;
|
|
mod delayed_composition;
|
|
mod touch;
|
|
pub mod windowing;
|
|
|
|
pub struct SendableFrameTree {
|
|
pub pipeline: CompositionPipeline,
|
|
pub size: Option<TypedSize2D<f32, PagePx>>,
|
|
pub children: Vec<SendableFrameTree>,
|
|
}
|
|
|
|
/// The subset of the pipeline that is needed for layer composition.
|
|
#[derive(Clone)]
|
|
pub struct CompositionPipeline {
|
|
pub id: PipelineId,
|
|
pub script_chan: IpcSender<ConstellationControlMsg>,
|
|
pub layout_chan: IpcSender<LayoutControlMsg>,
|
|
}
|