mirror of
https://github.com/servo/servo
synced 2026-05-10 09:02:30 +02:00
This change finishes the big rename associated with the old `compositing` crates. Long ago, these crates managed a compositor, like you might find in a traditional web engine. These days, compositing is done in WebRender so the name has stopped making much sense. Various structs inside the crates have already been renamed and this is the final big change necessary for the rename Testing: This is just a rename so existing tests should cover it. Signed-off-by: Martin Robinson <mrobinson@igalia.com>
58 lines
1.9 KiB
Rust
58 lines
1.9 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 https://mozilla.org/MPL/2.0/. */
|
|
|
|
#![deny(unsafe_code)]
|
|
|
|
use std::cell::Cell;
|
|
use std::rc::Rc;
|
|
|
|
use base::generic_channel::RoutedReceiver;
|
|
use constellation_traits::EmbedderToConstellationMessage;
|
|
use crossbeam_channel::Sender;
|
|
use embedder_traits::{EventLoopWaker, ShutdownState};
|
|
use paint_api::{PaintMessage, PaintProxy};
|
|
use profile_traits::{mem, time};
|
|
#[cfg(feature = "webxr")]
|
|
use webxr::WebXrRegistry;
|
|
|
|
pub use crate::paint::{Paint, WebRenderDebugOption};
|
|
|
|
#[macro_use]
|
|
mod tracing;
|
|
|
|
mod largest_contentful_paint_calculator;
|
|
mod paint;
|
|
mod painter;
|
|
mod pinch_zoom;
|
|
mod pipeline_details;
|
|
mod refresh_driver;
|
|
mod render_notifier;
|
|
mod screenshot;
|
|
mod touch;
|
|
mod webrender_external_images;
|
|
mod webview_renderer;
|
|
|
|
/// Data used to initialize the `Paint` subsystem.
|
|
pub struct InitialPaintState {
|
|
/// A channel to `Paint`.
|
|
pub paint_proxy: PaintProxy,
|
|
/// A port on which messages inbound to `Paint` can be received.
|
|
pub receiver: RoutedReceiver<PaintMessage>,
|
|
/// A channel to the constellation.
|
|
pub embedder_to_constellation_sender: Sender<EmbedderToConstellationMessage>,
|
|
/// A channel to the time profiler thread.
|
|
pub time_profiler_chan: time::ProfilerChan,
|
|
/// A channel to the memory profiler thread.
|
|
pub mem_profiler_chan: mem::ProfilerChan,
|
|
/// A shared state which tracks whether Servo has started or has finished
|
|
/// shutting down.
|
|
pub shutdown_state: Rc<Cell<ShutdownState>>,
|
|
/// An [`EventLoopWaker`] used in order to wake up the embedder when it is
|
|
/// time to paint.
|
|
pub event_loop_waker: Box<dyn EventLoopWaker>,
|
|
/// If WebXR is enabled, a [`WebXrRegistry`] to register WebXR threads.
|
|
#[cfg(feature = "webxr")]
|
|
pub webxr_registry: Box<dyn WebXrRegistry>,
|
|
}
|