pub(crate) struct PaintTimingHandler {
viewport_rect: LayoutRect,
lcp_size: f32,
lcp_next_uuid: u64,
lcp_candidate: Option<LCPCandidate>,
lcp_candidate_updated: bool,
reported_image_nodes: HashSet<OpaqueNode>,
painted_images: Vec<PendingImageRecord>,
reported_text_nodes: HashSet<OpaqueNode>,
painted_text_nodes: HashMap<OpaqueNode, TextRecord>,
}Fields§
§viewport_rect: LayoutRectThe rect of viewport.
lcp_size: f32The document’s largest contentful paint size
lcp_next_uuid: u64Counter for generating unique LCP candidate UUIDs.
lcp_candidate: Option<LCPCandidate>The LCP candidate, it may be a image or text.
lcp_candidate_updated: boolFlag to indicate if there is an update to LCP candidate.
This is used to avoid sending duplicate LCP candidates to Paint.
reported_image_nodes: HashSet<OpaqueNode>The set of image nodes that have been reported as LCP candidates.
painted_images: Vec<PendingImageRecord>§reported_text_nodes: HashSet<OpaqueNode>The set of text nodes that have been reported as LCP candidates.
painted_text_nodes: HashMap<OpaqueNode, TextRecord>Implementations§
Source§impl PaintTimingHandler
impl PaintTimingHandler
pub(crate) fn new(viewport_size: LayoutSize) -> Self
pub(crate) fn append_image_record( &mut self, tag: Option<Tag>, bounds: LayoutRect, clip_rect: LayoutRect, transform: FastLayoutTransform, url: Option<ServoUrl>, natural_width: Option<Au>, natural_height: Option<Au>, )
pub(crate) fn accumulate_text_rect( &mut self, tag: Tag, rect: LayoutRect, transform: FastLayoutTransform, )
pub(crate) fn check_bounding_rect( &self, bounds: LayoutRect, clip_rect: LayoutRect, ) -> bool
Sourcefn effective_visual_size(
&self,
intersection_rect: LayoutRect,
candidate_type: LCPCandidateType<'_>,
) -> Option<f32>
fn effective_visual_size( &self, intersection_rect: LayoutRect, candidate_type: LCPCandidateType<'_>, ) -> Option<f32>
Sourcefn compute_new_lcp_candidate(&mut self)
fn compute_new_lcp_candidate(&mut self)
Sourcefn report_largest_contentful_paint(&mut self, halt_lcp: bool)
fn report_largest_contentful_paint(&mut self, halt_lcp: bool)
Sourcepub(crate) fn mark_paint_timing(&mut self, halt_lcp: bool)
pub(crate) fn mark_paint_timing(&mut self, halt_lcp: bool)
pub(crate) fn did_lcp_candidate_update(&self) -> bool
pub(crate) fn unset_lcp_candidate_updated(&mut self)
pub(crate) fn largest_contentful_paint_candidate(&self) -> Option<LCPCandidate>
Auto Trait Implementations§
impl Freeze for PaintTimingHandler
impl RefUnwindSafe for PaintTimingHandler
impl Send for PaintTimingHandler
impl Sync for PaintTimingHandler
impl Unpin for PaintTimingHandler
impl UnsafeUnpin for PaintTimingHandler
impl UnwindSafe for PaintTimingHandler
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> 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