Flap
An adaptive container acting like a box or an overlay.
The AdwFlap
widget can display its children like a class@Gtk.Box does or like a class@Gtk.Overlay does, according to the property@Flap:fold-policy value.
AdwFlap
has at most three children: property@Flap:content, property@Flap:flap and property@Flap:separator. Content is the primary child, flap is displayed next to it when unfolded, or overlays it when folded. Flap can be shown or hidden by changing the property@Flap:reveal-flap value, as well as via swipe gestures if property@Flap:swipe-to-open and/or property@Flap:swipe-to-close are set to TRUE
.
Optionally, a separator can be provided, which would be displayed between the content and the flap when there's no shadow to separate them, depending on the transition type.
property@Flap:flap is transparent by default; add the style-classes.html#background style class to it if this is unwanted.
If property@Flap:modal is set to TRUE
, content becomes completely inaccessible when the flap is revealed while folded.
The position of the flap and separator children relative to the content is determined by orientation, as well as the property@Flap:flap-position value.
Folding the flap will automatically hide the flap widget, and unfolding it will automatically reveal it. If this behavior is not desired, the property@Flap:locked property can be used to override it.
Common use cases include sidebars, header bars that need to be able to overlap the window content (for example, in fullscreen mode) and bottom sheets.
AdwFlap as GtkBuildable
The AdwFlap
implementation of the iface@Gtk.Buildable interface supports setting the flap child by specifying “flap” as the “type” attribute of a <child>
element, and separator by specifying “separator”. Specifying “content” child type or omitting it results in setting the content child.
CSS nodes
AdwFlap
has a single CSS node with name flap
. The node will get the style classes .folded
when it is folded, and .unfolded
when it's not.
Constructors
Properties
The flap position.
The fold transition animation duration, in milliseconds.
The fold policy for the flap.
Determines when the flap will fold.
Whether the flap widget is revealed.
The reveal animation spring parameters.
The current reveal transition progress.
Whether the flap can be closed with a swipe gesture.
Whether the flap can be opened with a swipe gesture.
the type of animation used for reveal and fold transitions.
Functions
Gets the progress @self will snap back to after the gesture is canceled.
Gets the content widget for @self.
Gets the swipe distance of @self.
Gets the flap position for @self.
Gets the fold transition animation duration for @self, in milliseconds.
Gets the fold policy for @self.
Gets the fold threshold policy for @self.
Gets the current progress of @self.
Gets whether the flap widget is revealed for @self.
Gets the reveal animation spring parameters for @self.
Gets the current reveal progress for @self.
Gets the separator widget for @self.
Gets the area @self can start a swipe from for the given direction and gesture type.
Gets whether @self can be closed with a swipe gesture.
Gets whether @self can be opened with a swipe gesture.
Gets the type of animation used for reveal and fold transitions in @self.
Sets the content widget for @self.
Sets the flap position for @self.
Sets the fold transition animation duration for @self, in milliseconds.
Sets the fold policy for @self.
Sets the fold threshold policy for @self.
Sets whether the flap widget is revealed for @self.
Sets the reveal animation spring parameters for @self.
Sets the separator widget for @self.
Sets whether @self can be closed with a swipe gesture.
Sets whether @self can be opened with a swipe gesture.
Sets the type of animation used for reveal and fold transitions in @self.