#[non_exhaustive]pub enum VirtualListScroll {
Reveal,
Top,
Center,
}Expand description
Where VirtualListHandle::scroll_to_item places the row.
Adding Center in 0.13 made this enum
#[non_exhaustive]; a match on it needs a wildcard arm.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Reveal
Scroll the least distance that makes the row fully visible; a row
already fully visible does not move. In a measured list the distance
needs the heights of the rows in between, so a row that was not laid
out in the last frame (far outside the viewport, never measured) is
brought to the top edge instead, as Top does.
Top
Put the row’s top edge at the top of the viewport (clamped, in a uniform list, so the last page stays full).
Center
When the row is not fully visible, scroll so its centre sits at the
viewport’s centre, clamped at both ends of the content; a row already
fully visible does not move. This is GPUI’s
ScrollStrategy::Center, which the keyboard cursor of the fixed-row
collections follows. A measured list centres a row it laid out in the
last frame and brings any other row to the top edge, as
Top does.
Trait Implementations§
Source§impl Clone for VirtualListScroll
impl Clone for VirtualListScroll
impl Copy for VirtualListScroll
Source§impl Debug for VirtualListScroll
impl Debug for VirtualListScroll
Source§impl Default for VirtualListScroll
impl Default for VirtualListScroll
impl Eq for VirtualListScroll
Source§impl PartialEq for VirtualListScroll
impl PartialEq for VirtualListScroll
impl StructuralPartialEq for VirtualListScroll
Auto Trait Implementations§
impl Freeze for VirtualListScroll
impl RefUnwindSafe for VirtualListScroll
impl Send for VirtualListScroll
impl Sync for VirtualListScroll
impl Unpin for VirtualListScroll
impl UnsafeUnpin for VirtualListScroll
impl UnwindSafe for VirtualListScroll
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
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.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> ⓘ
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().