### Interface

# Adw Swipeable

#### Description [src]

    interface Adw.Swipeable : Gtk.Widget

An interface for swipeable widgets.

The `AdwSwipeable` interface is implemented by all swipeable widgets.

See `AdwSwipeTracker` for details about implementing it.

#### Prerequisite

In order to implement Swipeable, your type must inherit from`GtkWidget`.

#### Implementations

- AdwBottomSheet
- AdwCarousel
- AdwFlap
- AdwLeaflet
- AdwNavigationView
- AdwOverlaySplitView

#### Instance methods

###### adw_swipeable_get_cancel_progress

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

###### adw_swipeable_get_distance

Gets the swipe distance of `self`.

###### adw_swipeable_get_progress

Gets the current progress of `self`.

###### adw_swipeable_get_snap_points

Gets the snap points of `self`.

###### adw_swipeable_get_swipe_area

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

#### Interface structure

    struct AdwSwipeableInterface {
      GTypeInterface parent;
      double (* get_distance) (
        AdwSwipeable* self
      );
      double* (* get_snap_points) (
        AdwSwipeable* self,
        int* n_snap_points
      );
      double (* get_progress) (
        AdwSwipeable* self
      );
      double (* get_cancel_progress) (
        AdwSwipeable* self
      );
      void (* get_swipe_area) (
        AdwSwipeable* self,
        AdwNavigationDirection navigation_direction,
        gboolean is_drag,
        GdkRectangle* rect
      );

    }

An interface for swipeable widgets.

###### Interface members

`parent`

    GTypeInterface

| The parent interface.

`get_distance`

    double (* get_distance) (
        AdwSwipeable* self
      )

| Gets the swipe distance.

`get_snap_points`

    double* (* get_snap_points) (
        AdwSwipeable* self,
        int* n_snap_points
      )

| Gets the snap points.

`get_progress`

    double (* get_progress) (
        AdwSwipeable* self
      )

| Gets the current progress.

`get_cancel_progress`

    double (* get_cancel_progress) (
        AdwSwipeable* self
      )

| Gets the cancel progress.

`get_swipe_area`

    void (* get_swipe_area) (
        AdwSwipeable* self,
        AdwNavigationDirection navigation_direction,
        gboolean is_drag,
        GdkRectangle* rect
      )

| Gets the swipeable rectangle.

#### Virtual methods

###### Adw.Swipeable.get_cancel_progress

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

###### Adw.Swipeable.get_distance

Gets the swipe distance of `self`.

###### Adw.Swipeable.get_progress

Gets the current progress of `self`.

###### Adw.Swipeable.get_snap_points

Gets the snap points of `self`.

###### Adw.Swipeable.get_swipe_area

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