Struct webrender_api::display_item::StickyFrameDescriptor
source · pub struct StickyFrameDescriptor {
pub id: SpatialId,
pub parent_spatial_id: SpatialId,
pub bounds: LayoutRect,
pub margins: SideOffsets2D<Option<f32>, LayoutPixel>,
pub vertical_offset_bounds: StickyOffsetBounds,
pub horizontal_offset_bounds: StickyOffsetBounds,
pub previously_applied_offset: LayoutVector2D,
pub key: SpatialTreeItemKey,
pub transform: Option<PropertyBinding<LayoutTransform>>,
}
Fields§
§id: SpatialId
§parent_spatial_id: SpatialId
§bounds: LayoutRect
§margins: SideOffsets2D<Option<f32>, LayoutPixel>
The margins that should be maintained between the edge of the parent viewport and this sticky frame. A margin of None indicates that the sticky frame should not stick at all to that particular edge of the viewport.
vertical_offset_bounds: StickyOffsetBounds
The minimum and maximum vertical offsets for this sticky frame. Ignoring these constraints, the sticky frame will continue to stick to the edge of the viewport as its original position is scrolled out of view. Constraints specify a maximum and minimum offset from the original position relative to non-sticky content within the same scrolling frame.
horizontal_offset_bounds: StickyOffsetBounds
The minimum and maximum horizontal offsets for this sticky frame. Ignoring these constraints, the sticky frame will continue to stick to the edge of the viewport as its original position is scrolled out of view. Constraints specify a maximum and minimum offset from the original position relative to non-sticky content within the same scrolling frame.
previously_applied_offset: LayoutVector2D
The amount of offset that has already been applied to the sticky frame. A positive y
component this field means that a top-sticky item was in a scrollframe that has been
scrolled down, such that the sticky item’s position needed to be offset downwards by
previously_applied_offset.y
. A negative y component corresponds to the upward offset
applied due to bottom-stickiness. The x-axis works analogously.
key: SpatialTreeItemKey
A unique (per-pipeline) key for this spatial that is stable across display lists.
transform: Option<PropertyBinding<LayoutTransform>>
A property binding that we use to store an animation ID for APZ
Trait Implementations§
source§impl Clone for StickyFrameDescriptor
impl Clone for StickyFrameDescriptor
source§fn clone(&self) -> StickyFrameDescriptor
fn clone(&self) -> StickyFrameDescriptor
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for StickyFrameDescriptor
impl Debug for StickyFrameDescriptor
source§impl Default for StickyFrameDescriptor
impl Default for StickyFrameDescriptor
source§fn default() -> StickyFrameDescriptor
fn default() -> StickyFrameDescriptor
source§impl<'de> Deserialize<'de> for StickyFrameDescriptor
impl<'de> Deserialize<'de> for StickyFrameDescriptor
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>,
source§impl PartialEq for StickyFrameDescriptor
impl PartialEq for StickyFrameDescriptor
source§impl Peek for StickyFrameDescriptor
impl Peek for StickyFrameDescriptor
source§impl Poke for StickyFrameDescriptor
impl Poke for StickyFrameDescriptor
source§impl Serialize for StickyFrameDescriptor
impl Serialize for StickyFrameDescriptor
impl Copy for StickyFrameDescriptor
impl StructuralPartialEq for StickyFrameDescriptor
Auto Trait Implementations§
impl Freeze for StickyFrameDescriptor
impl RefUnwindSafe for StickyFrameDescriptor
impl Send for StickyFrameDescriptor
impl Sync for StickyFrameDescriptor
impl Unpin for StickyFrameDescriptor
impl UnwindSafe for StickyFrameDescriptor
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)