pub enum CrossProcessCompositorMessage {
Show 15 variants
SendInitialTransaction(PipelineId),
SendScrollNode(PipelineId, LayoutPoint, ExternalScrollId),
SendDisplayList {
display_list_info: Box<CompositorDisplayListInfo>,
display_list_descriptor: BuiltDisplayListDescriptor,
display_list_receiver: IpcBytesReceiver,
},
HitTest(Option<PipelineId>, DevicePoint, HitTestFlags, IpcSender<Vec<CompositorHitTestResult>>),
GenerateImageKey(IpcSender<ImageKey>),
AddImage(ImageKey, ImageDescriptor, SerializableImageData),
UpdateImages(Vec<ImageUpdate>),
GenerateFontKeys(usize, usize, IpcSender<(Vec<FontKey>, Vec<FontInstanceKey>)>),
AddFont(FontKey, Arc<IpcSharedMemory>, u32),
AddSystemFont(FontKey, NativeFontHandle),
AddFontInstance(FontInstanceKey, FontKey, f32, FontInstanceFlags),
RemoveFonts(Vec<FontKey>, Vec<FontInstanceKey>),
GetClientWindowRect(IpcSender<DeviceIndependentIntRect>),
GetScreenSize(IpcSender<DeviceIndependentIntSize>),
GetAvailableScreenSize(IpcSender<DeviceIndependentIntSize>),
}
Variants§
SendInitialTransaction(PipelineId)
Inform WebRender of the existence of this pipeline.
SendScrollNode(PipelineId, LayoutPoint, ExternalScrollId)
Perform a scroll operation.
SendDisplayList
Inform WebRender of a new display list for the given pipeline.
Fields
display_list_info: Box<CompositorDisplayListInfo>
The CompositorDisplayListInfo that describes the display list being sent.
display_list_descriptor: BuiltDisplayListDescriptor
A descriptor of this display list used to construct this display list from raw data.
display_list_receiver: IpcBytesReceiver
An ipc::IpcBytesReceiver used to send the raw data of the display list.
HitTest(Option<PipelineId>, DevicePoint, HitTestFlags, IpcSender<Vec<CompositorHitTestResult>>)
Perform a hit test operation. The result will be returned via the provided channel sender.
GenerateImageKey(IpcSender<ImageKey>)
Create a new image key. The result will be returned via the provided channel sender.
AddImage(ImageKey, ImageDescriptor, SerializableImageData)
Add an image with the given data and ImageKey
.
UpdateImages(Vec<ImageUpdate>)
Perform a resource update operation.
GenerateFontKeys(usize, usize, IpcSender<(Vec<FontKey>, Vec<FontInstanceKey>)>)
Generate a new batch of font keys which can be used to allocate keys asynchronously.
AddFont(FontKey, Arc<IpcSharedMemory>, u32)
Add a font with the given data and font key.
AddSystemFont(FontKey, NativeFontHandle)
Add a system font with the given font key and handle.
AddFontInstance(FontInstanceKey, FontKey, f32, FontInstanceFlags)
Add an instance of a font with the given instance key.
RemoveFonts(Vec<FontKey>, Vec<FontInstanceKey>)
Remove the given font resources from our WebRender instance.
GetClientWindowRect(IpcSender<DeviceIndependentIntRect>)
Get the client window size and position.
GetScreenSize(IpcSender<DeviceIndependentIntSize>)
Get the size of the screen that the client window inhabits.
GetAvailableScreenSize(IpcSender<DeviceIndependentIntSize>)
Get the available screen size (without toolbars and docks) for the screen the client window inhabits.
Trait Implementations§
source§impl<'de> Deserialize<'de> for CrossProcessCompositorMessage
impl<'de> Deserialize<'de> for CrossProcessCompositorMessage
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl !Freeze for CrossProcessCompositorMessage
impl !RefUnwindSafe for CrossProcessCompositorMessage
impl Send for CrossProcessCompositorMessage
impl !Sync for CrossProcessCompositorMessage
impl Unpin for CrossProcessCompositorMessage
impl UnwindSafe for CrossProcessCompositorMessage
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more