mirror of
https://github.com/servo/servo.git
synced 2025-06-21 07:38:59 +01:00
compositing
: Combine webrender_traits
and compositing_traits
(#36372)
These two traits both exposed different parts of the compositing API, but now that the compositor doesn't depend directly on `script` any longer and the `script_traits` crate has been split into the `constellation_traits` crate, this can be finally be cleaned up without causing circular dependencies. In addition, some unit tests for the `IOPCompositor`'s scroll node tree are also moved into `compositing_traits` as well. Testing: This just combines two crates, so no new tests are necessary. Fixes: #35984. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Signed-off-by: Martin Robinson <mrobinson@igalia.com>
This commit is contained in:
parent
e74a042efd
commit
0caa271176
56 changed files with 582 additions and 637 deletions
|
@ -49,6 +49,7 @@ canvas_traits = { workspace = true }
|
|||
cbc = { workspace = true }
|
||||
chrono = { workspace = true }
|
||||
cipher = { workspace = true }
|
||||
compositing_traits = { workspace = true }
|
||||
constellation_traits = { workspace = true }
|
||||
content-security-policy = { workspace = true }
|
||||
cookie = { workspace = true }
|
||||
|
@ -134,7 +135,6 @@ uuid = { workspace = true, features = ["serde"] }
|
|||
webdriver = { workspace = true }
|
||||
webgpu_traits = { workspace = true }
|
||||
webrender_api = { workspace = true }
|
||||
webrender_traits = { workspace = true }
|
||||
webxr-api = { workspace = true, features = ["ipc"], optional = true }
|
||||
wgpu-core = { workspace = true }
|
||||
wgpu-types = { workspace = true }
|
||||
|
|
|
@ -9,6 +9,7 @@ use std::sync::{Arc, Mutex};
|
|||
use std::time::{Duration, Instant};
|
||||
use std::{f64, mem};
|
||||
|
||||
use compositing_traits::{CrossProcessCompositorApi, ImageUpdate, SerializableImageData};
|
||||
use dom_struct::dom_struct;
|
||||
use embedder_traits::resources::{self, Resource as EmbedderResource};
|
||||
use embedder_traits::{MediaPositionState, MediaSessionEvent, MediaSessionPlaybackState};
|
||||
|
@ -41,7 +42,6 @@ use webrender_api::{
|
|||
ExternalImageData, ExternalImageId, ExternalImageType, ImageBufferKind, ImageDescriptor,
|
||||
ImageDescriptorFlags, ImageFormat, ImageKey,
|
||||
};
|
||||
use webrender_traits::{CrossProcessCompositorApi, ImageUpdate, SerializableImageData};
|
||||
|
||||
use crate::document_loader::{LoadBlocker, LoadType};
|
||||
use crate::dom::attr::Attr;
|
||||
|
|
|
@ -2,12 +2,12 @@
|
|||
* 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/. */
|
||||
|
||||
use compositing_traits::CrossProcessCompositorMessage;
|
||||
use dom_struct::dom_struct;
|
||||
use euclid::Size2D;
|
||||
use profile_traits::ipc;
|
||||
use servo_geometry::DeviceIndependentIntSize;
|
||||
use style_traits::CSSPixel;
|
||||
use webrender_traits::CrossProcessCompositorMessage;
|
||||
|
||||
use crate::dom::bindings::codegen::Bindings::ScreenBinding::ScreenMethods;
|
||||
use crate::dom::bindings::num::Finite;
|
||||
|
|
|
@ -21,6 +21,7 @@ use base64::Engine;
|
|||
#[cfg(feature = "bluetooth")]
|
||||
use bluetooth_traits::BluetoothRequest;
|
||||
use canvas_traits::webgl::WebGLChan;
|
||||
use compositing_traits::CrossProcessCompositorApi;
|
||||
use constellation_traits::{
|
||||
DocumentState, LoadData, LoadOrigin, NavigationHistoryBehavior, ScriptToConstellationChan,
|
||||
ScriptToConstellationMessage, ScrollState, StructuredSerializedData, WindowSizeType,
|
||||
|
@ -86,7 +87,6 @@ use stylo_atoms::Atom;
|
|||
use url::Position;
|
||||
use webrender_api::units::{DevicePixel, LayoutPixel};
|
||||
use webrender_api::{DocumentId, ExternalScrollId};
|
||||
use webrender_traits::CrossProcessCompositorApi;
|
||||
|
||||
use super::bindings::codegen::Bindings::MessagePortBinding::StructuredSerializeOptions;
|
||||
use super::bindings::trace::HashMapTracedValues;
|
||||
|
@ -1895,7 +1895,7 @@ impl Window {
|
|||
let (sender, receiver) =
|
||||
ProfiledIpc::channel::<DeviceIndependentIntRect>(timer_profile_chan).unwrap();
|
||||
let _ = self.compositor_api.sender().send(
|
||||
webrender_traits::CrossProcessCompositorMessage::GetClientWindowRect(
|
||||
compositing_traits::CrossProcessCompositorMessage::GetClientWindowRect(
|
||||
self.webview_id(),
|
||||
sender,
|
||||
),
|
||||
|
|
|
@ -36,6 +36,7 @@ use base::cross_process_instant::CrossProcessInstant;
|
|||
use base::id::{BrowsingContextId, HistoryStateId, PipelineId, PipelineNamespace, WebViewId};
|
||||
use canvas_traits::webgl::WebGLPipeline;
|
||||
use chrono::{DateTime, Local};
|
||||
use compositing_traits::CrossProcessCompositorApi;
|
||||
use constellation_traits::{
|
||||
JsEvalResult, LoadData, LoadOrigin, NavigationHistoryBehavior, ScriptToConstellationChan,
|
||||
ScriptToConstellationMessage, ScrollState, StructuredSerializedData, WindowSizeType,
|
||||
|
@ -95,7 +96,6 @@ use url::Position;
|
|||
#[cfg(feature = "webgpu")]
|
||||
use webgpu_traits::{WebGPUDevice, WebGPUMsg};
|
||||
use webrender_api::DocumentId;
|
||||
use webrender_traits::CrossProcessCompositorApi;
|
||||
|
||||
use crate::document_collection::DocumentCollection;
|
||||
use crate::document_loader::DocumentLoader;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue