Adw – 1
Description: Reference for Adw-1

### Namespace

# Adw – 1

Building blocks for modern GNOME applications

Version | 1.1.0
Authors | Purism SPC
License | LGPL-2.1-or-later
Website | https://gnome.pages.gitlab.gnome.org/libadwaita
Source | https://gitlab.gnome.org/GNOME/libadwaita/

#### Build

C headers | `adwaita.h`
pkg-config files | `libadwaita-1`

#### Dependencies

GObject | The base type system library
| Browse documentation
GTK | The GTK toolkit
| Browse documentation

#### Additional documentation

- Compiling with Libadwaita
- Initialization
- Boxed Lists
- Adaptive Layouts
- Styles & Appearance
- Named Colors
- Style Classes
- Migrating between development versions
- Migrating from Libhandy 1.4 to Libadwaita
- Visual Index
- Classes Hierarchy

#### Classes

ActionRow | A `GtkListBoxRow` used to present actions.
Animation | A base class for animations.
AnimationTarget | Represents a value `AdwAnimation` can animate.
Application | A base class for Adwaita applications.
ApplicationWindow | A freeform application window.
Avatar | A widget displaying an image, with a generated fallback.
Bin | A widget with one child.
ButtonContent | A helper widget for creating buttons.
CallbackAnimationTarget | An `AdwAnimationTarget` that calls a given callback during the animation.
Carousel | A paginated scrolling widget.
CarouselIndicatorDots | A dots indicator for `AdwCarousel`.
CarouselIndicatorLines | A lines indicator for `AdwCarousel`.
Clamp | A widget constraining its child to a given size.
ClampLayout | A layout manager constraining its children to a given size.
ClampScrollable | A scrollable `AdwClamp`.
ComboRow | A `GtkListBoxRow` used to choose from a list of items.
EnumListItem | `AdwEnumListItem` is the type of items in a `AdwEnumListModel`.
EnumListModel | A `GListModel` representing values of a given enum.
ExpanderRow | A `GtkListBoxRow` used to reveal widgets.
Flap | An adaptive container acting like a box or an overlay.
HeaderBar | A title bar widget.
Leaflet | An adaptive container acting like a box or a stack.
LeafletPage | An auxiliary class used by `AdwLeaflet`.
PreferencesGroup | A group of preference rows.
PreferencesPage | A page from `AdwPreferencesWindow`.
PreferencesRow | A `GtkListBoxRow` used to present preferences.
PreferencesWindow | A window to present an application’s preferences.
SplitButton | A combined button and dropdown widget.
SpringAnimation | A spring-based `AdwAnimation`.
Squeezer | A best fit container.
SqueezerPage | An auxiliary class used by `AdwSqueezer`.
StatusPage | A page used for empty/error states and similar use-cases.
StyleManager | A class for managing application-wide styling.
SwipeTracker | A swipe tracker used in `AdwCarousel`, `AdwFlap` and `AdwLeaflet`.
TabBar | A tab bar for `AdwTabView`.
TabPage | An auxiliary class used by `AdwTabView`.
TabView | A dynamic tabbed container.
TimedAnimation | A time-based `AdwAnimation`.
Toast | A helper object for `AdwToastOverlay`.
ToastOverlay | A widget showing toasts above its content.
ViewStack | A view container for `AdwViewSwitcher`.
ViewStackPage | An auxiliary class used by `AdwViewStack`.
ViewSwitcher | An adaptive view switcher.
ViewSwitcherBar | A view switcher action bar.
ViewSwitcherTitle | A view switcher title.
Window | A freeform window.
WindowTitle | A helper widget for setting a window’s title and subtitle.

#### Interfaces

Swipeable | An interface for swipeable widgets.

#### Structs

SpringParams | Physical parameters of a spring for `AdwSpringAnimation`.

#### Enumerations

AnimationState | Describes the possible states of an `AdwAnimation`.
CenteringPolicy | Describes title centering behavior of a `AdwHeaderBar` widget.
ColorScheme | Application color schemes for `AdwStyleManager:color-scheme`.
Easing | Describes the available easing functions for use with `AdwTimedAnimation`.
FlapFoldPolicy | Describes the possible folding behavior of a `AdwFlap` widget.
FlapTransitionType | Describes transitions types of a `AdwFlap` widget.
FoldThresholdPolicy | Determines when `AdwFlap` and `AdwLeaflet` will fold.
LeafletTransitionType | Describes the possible transitions in a `AdwLeaflet` widget.
NavigationDirection | Describes the direction of a swipe navigation gesture.
SqueezerTransitionType | Describes the possible transitions in a `AdwSqueezer` widget.
ToastPriority | `AdwToast` behavior when another toast is already displayed.
ViewSwitcherPolicy | Describes the adaptive modes of `AdwViewSwitcher`.

#### Callbacks

AnimationTargetFunc | Prototype for animation targets based on user callbacks.

#### Functions

get_enable_animations | Checks whether animations are enabled for `widget`.
get_major_version | Returns the major version number of the Adwaita library.
get_micro_version | Returns the micro version number of the Adwaita library.
get_minor_version | Returns the minor version number of the Adwaita library.
init | Initializes Libadwaita.
is_initialized | Use this function to check if libadwaita has been initialized with `adw_init()`.
lerp | Computes the linear interpolation between `a` and `b` for `t`.

#### Function Macros

CHECK_VERSION | Compile-time version checking. Evaluates to `TRUE` if the version of Adwaita is greater than the required one.
ENCODE_VERSION |
UNAVAILABLE |

#### Constants

DURATION_INFINITE | Indicates an `AdwAnimation` with an infinite duration.
MAJOR_VERSION | Adwaita major version component (e.g. 1 if the version is 1.2.3).
MICRO_VERSION | Adwaita micro version component (e.g. 3 if the version is 1.2.3).
MINOR_VERSION | Adwaita minor version component (e.g. 2 if the version is 1.2.3).
VERSION_S | Adwaita version, encoded as a string, useful for printing and concatenation.