Struct BreakpointTracker
pub struct BreakpointTracker { /* private fields */ }Expand description
The class a surface holds while it lays out, re-derived from the rect of
every pass (Widget::apply_layout).
Hysteresis is the point: a window dragged to rest exactly on a threshold
would otherwise flicker between two layouts, a frame each, as the person
lets go. A class that does not hold has to see a threshold pass by
Metrics::layout_hysteresis before it changes, the same band
NavShell uses for its own thresholds.
Implementations§
§impl BreakpointTracker
impl BreakpointTracker
pub fn new() -> BreakpointTracker
pub fn new() -> BreakpointTracker
A tracker that has not laid out yet.
pub fn derive(&mut self, width: f64, m: &Metrics) -> Breakpoint
pub fn derive(&mut self, width: f64, m: &Metrics) -> Breakpoint
Derive the class width asks for, holding the class of the last pass
until the width is clear of its threshold by the hysteresis band.
pub fn held(&self) -> Option<Breakpoint>
pub fn held(&self) -> Option<Breakpoint>
The class of the last pass, None before the first.
pub fn forget(&mut self)
pub fn forget(&mut self)
Forget the held class: the surface has no rect to speak of (it was closed, or has not been laid out since its tree was rebuilt), so the next pass derives from its rect alone.
Trait Implementations§
§impl Clone for BreakpointTracker
impl Clone for BreakpointTracker
§fn clone(&self) -> BreakpointTracker
fn clone(&self) -> BreakpointTracker
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for BreakpointTracker
impl Debug for BreakpointTracker
§impl Default for BreakpointTracker
impl Default for BreakpointTracker
§fn default() -> BreakpointTracker
fn default() -> BreakpointTracker
§impl PartialEq for BreakpointTracker
impl PartialEq for BreakpointTracker
§fn eq(&self, other: &BreakpointTracker) -> bool
fn eq(&self, other: &BreakpointTracker) -> bool
self and other values to be equal, and is used by ==.impl Copy for BreakpointTracker
impl Eq for BreakpointTracker
impl StructuralPartialEq for BreakpointTracker
Auto Trait Implementations§
impl Freeze for BreakpointTracker
impl RefUnwindSafe for BreakpointTracker
impl Send for BreakpointTracker
impl Sync for BreakpointTracker
impl Unpin for BreakpointTracker
impl UnsafeUnpin for BreakpointTracker
impl UnwindSafe for BreakpointTracker
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
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,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSend for T
impl<T> DowncastSend for T
§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
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