pub struct AppBarMetrics {
pub small_height: f64,
pub collapsed_height: f64,
pub medium_expanded: f64,
pub large_expanded: f64,
pub bottom_height: f64,
}Expand description
The resolved band heights of one density — upstream’s M3EAppBarMetrics,
as produced by M3EAppBarTheme.metrics(density).
use frust_material::{AppBarDensity, AppBarMetrics, AppBarVariant};
let regular = AppBarMetrics::for_density(AppBarDensity::Regular);
assert_eq!(regular.small_height, 64.0);
assert_eq!(regular.expanded(AppBarVariant::Large), 152.0);
// Compact takes 8dp off every band but the bottom bar's.
let compact = AppBarMetrics::for_density(AppBarDensity::Compact);
assert_eq!(compact.small_height, 56.0);
assert_eq!(compact.bottom_height, regular.bottom_height);Fields§
§small_height: f64The fixed top bar’s band, in logical px.
collapsed_height: f64The collapsing bar’s fully-collapsed band, in logical px.
medium_expanded: f64The AppBarVariant::Medium expanded band, in logical px.
large_expanded: f64The AppBarVariant::Large expanded band, in logical px.
bottom_height: f64The bottom bar’s band, in logical px (density-independent).
Implementations§
Source§impl AppBarMetrics
impl AppBarMetrics
Sourcepub const fn for_density(density: AppBarDensity) -> Self
pub const fn for_density(density: AppBarDensity) -> Self
The bands density resolves to.
Sourcepub const fn expanded(&self, variant: AppBarVariant) -> f64
pub const fn expanded(&self, variant: AppBarVariant) -> f64
The fully-expanded band of variant, in logical px —
_buildSliver’s own switch (variant).
Trait Implementations§
Source§impl Clone for AppBarMetrics
impl Clone for AppBarMetrics
impl Copy for AppBarMetrics
Source§impl Debug for AppBarMetrics
impl Debug for AppBarMetrics
Source§impl PartialEq for AppBarMetrics
impl PartialEq for AppBarMetrics
impl StructuralPartialEq for AppBarMetrics
Auto Trait Implementations§
impl Freeze for AppBarMetrics
impl RefUnwindSafe for AppBarMetrics
impl Send for AppBarMetrics
impl Sync for AppBarMetrics
impl Unpin for AppBarMetrics
impl UnsafeUnpin for AppBarMetrics
impl UnwindSafe for AppBarMetrics
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
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.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<T> ErasedDestructor for Twhere
T: 'static,
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> ⓘ
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> StorageAccess<T> for T
impl<T> StorageAccess<T> for T
Source§fn as_borrowed(&self) -> &T
fn as_borrowed(&self) -> &T
Borrows the value.
Source§fn into_taken(self) -> T
fn into_taken(self) -> T
Takes the value.