Skip to main content

LayerNode

Struct LayerNode 

Source
pub struct LayerNode {
Show 21 fields pub node_id: Option<NodeId>, pub wraps: Option<NodeId>, pub local_bounds: Rect, pub transform_to_parent: ProjectiveTransform, pub content_offset: Point, pub motion_context_animated: bool, pub translated_content_context: bool, pub translated_content_offset: Point, pub scene_children_origin: Point, pub scene_children_layer_translation: Point, pub graphics_layer: GraphicsLayer, pub clip_to_bounds: bool, pub shadow_clip: Option<Rect>, pub hit_test: Option<HitTestNode>, pub has_hit_targets: bool, pub has_origin_sinks: bool, pub isolation: IsolationReasons, pub cache_policy: CachePolicy, pub cache_hashes: LayerRasterCacheHashes, pub cache_hashes_valid: bool, pub children: Vec<RenderNode>,
}

Fields§

§node_id: Option<NodeId>§wraps: Option<NodeId>

Set on the synthetic layer that holds a node’s outer draws, those chained before its graphics layer, around that node’s own layer. Scene updates address the node through this id because the node’s layer has none of the outer draws and the wrapper has no node id of its own.

§local_bounds: Rect§transform_to_parent: ProjectiveTransform§content_offset: Point§motion_context_animated: bool§translated_content_context: bool§translated_content_offset: Point§scene_children_origin: Point

Window-space origin this layer’s children are placed from, and the accumulated ancestor graphics-layer translation, captured during the full per-frame scene build. Read back when a dirty subtree is rebuilt in isolation (update_scene_from_applier) so a scrolling field’s window origin stays live during a fling even though the ancestor chain is not re-walked from the root. Defaults to the identity origin.

§scene_children_layer_translation: Point§graphics_layer: GraphicsLayer§clip_to_bounds: bool§shadow_clip: Option<Rect>§hit_test: Option<HitTestNode>§has_hit_targets: bool§has_origin_sinks: bool

Whether this subtree publishes live window origins (a text field’s popup anchor, a scroll container’s viewport rect). Those sinks are written during a full lowering, so the scroll fast path may translate a retained subtree in place only when this is false.

§isolation: IsolationReasons§cache_policy: CachePolicy§cache_hashes: LayerRasterCacheHashes§cache_hashes_valid: bool§children: Vec<RenderNode>

Implementations§

Trait Implementations§

Source§

impl Clone for LayerNode

Source§

fn clone(&self) -> LayerNode

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Default for LayerNode

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.