libadwaita::prelude

Trait SwipeableExt

source
pub trait SwipeableExt: IsA<Swipeable> + 'static {
    // Provided methods
    fn cancel_progress(&self) -> f64 { ... }
    fn distance(&self) -> f64 { ... }
    fn progress(&self) -> f64 { ... }
    fn snap_points(&self) -> Vec<f64> { ... }
    fn swipe_area(
        &self,
        navigation_direction: NavigationDirection,
        is_drag: bool,
    ) -> Rectangle { ... }
}
Expand description

Trait containing all Swipeable methods.

§Implementors

BottomSheet, Carousel, Flap, Leaflet, NavigationView, OverlaySplitView, Swipeable

Provided Methods§

source

fn cancel_progress(&self) -> f64

Gets the progress @self will snap back to after the gesture is canceled.

§Returns

the cancel progress, unitless

source

fn distance(&self) -> f64

Gets the swipe distance of @self.

This corresponds to how many pixels 1 unit represents.

§Returns

the swipe distance in pixels

source

fn progress(&self) -> f64

Gets the current progress of @self.

§Returns

the current progress, unitless

source

fn snap_points(&self) -> Vec<f64>

Gets the snap points of @self.

Each snap point represents a progress value that is considered acceptable to end the swipe on.

§Returns

the snap points

source

fn swipe_area( &self, navigation_direction: NavigationDirection, is_drag: bool, ) -> Rectangle

Gets the area @self can start a swipe from for the given direction and gesture type.

This can be used to restrict swipes to only be possible from a certain area, for example, to only allow edge swipes, or to have a draggable element and ignore swipes elsewhere.

If not implemented, the default implementation returns the allocation of @self, allowing swipes from anywhere.

the direction of the swipe

§is_drag

whether the swipe is caused by a dragging gesture

§Returns
§rect

a pointer to a rectangle to store the swipe area

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§