pub struct ScrollTreeNode {
pub parent: Option<ScrollTreeNodeId>,
pub children: Vec<ScrollTreeNodeId>,
pub webrender_id: Option<SpatialId>,
pub info: SpatialTreeNodeInfo,
/* private fields */
}Expand description
A node in a tree of scroll nodes. This may either be a scrollable node which responds to scroll events or a non-scrollable one.
Fields§
§parent: Option<ScrollTreeNodeId>The index of the parent of this node in the tree. If this is None then this is the root node.
children: Vec<ScrollTreeNodeId>The children of this ScrollTreeNode.
webrender_id: Option<SpatialId>The WebRender id, which is filled in when this tree is serialiezd into a WebRender display list.
info: SpatialTreeNodeInfoSpecific information about this node, depending on whether it is a scroll node or a reference frame.
Implementations§
Source§impl ScrollTreeNode
impl ScrollTreeNode
Sourcepub fn webrender_id(&self) -> SpatialId
pub fn webrender_id(&self) -> SpatialId
Get the WebRender SpatialId for the given [ScrollNodeId]. This will
panic if [ScrollTree::build_display_list] has not been called yet.
Sourcepub fn external_id(&self) -> Option<ExternalScrollId>
pub fn external_id(&self) -> Option<ExternalScrollId>
Get the external id of this node.
Sourcepub fn offset(&self) -> Option<LayoutVector2D>
pub fn offset(&self) -> Option<LayoutVector2D>
Get the offset id of this node if it applies.
pub fn debug_print(&self, print_tree: &mut PrintTree, node_index: usize)
Trait Implementations§
Source§impl Clone for ScrollTreeNode
impl Clone for ScrollTreeNode
Source§fn clone(&self) -> ScrollTreeNode
fn clone(&self) -> ScrollTreeNode
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ScrollTreeNode
impl Debug for ScrollTreeNode
Source§impl<'de> Deserialize<'de> for ScrollTreeNode
impl<'de> Deserialize<'de> for ScrollTreeNode
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>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl MallocSizeOf for ScrollTreeNode
impl MallocSizeOf for ScrollTreeNode
Source§fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
Measure the heap usage of all descendant heap-allocated structures, but
not the space taken up by the value itself.
Auto Trait Implementations§
impl !Freeze for ScrollTreeNode
impl !RefUnwindSafe for ScrollTreeNode
impl Send for ScrollTreeNode
impl !Sync for ScrollTreeNode
impl Unpin for ScrollTreeNode
impl UnsafeUnpin for ScrollTreeNode
impl UnwindSafe for ScrollTreeNode
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
Converts
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>
Converts
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 moreSource§impl<T> MaybeBoxed<Box<T>> for T
impl<T> MaybeBoxed<Box<T>> for T
Source§fn maybe_boxed(self) -> Box<T>
fn maybe_boxed(self) -> Box<T>
Convert
Source§impl<T> MaybeBoxed<T> for T
impl<T> MaybeBoxed<T> for T
Source§fn maybe_boxed(self) -> T
fn maybe_boxed(self) -> T
Convert