Flap#

Deprecated since version 1.4: See the migration guide

class Flap(**properties: Any)#

Superclasses: Widget, InitiallyUnowned, Object

Implemented Interfaces: Swipeable, Accessible, Buildable, ConstraintTarget, Orientable

An adaptive container acting like a box or an overlay.

https://gnome.pages.gitlab.gnome.org/libadwaita/doc/1-latest/flap-narrow.png

The AdwFlap widget can display its children like a Box does or like a Overlay does, according to the fold_policy value.

AdwFlap has at most three children: content, flap and 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 reveal_flap value, as well as via swipe gestures if swipe_to_open and/or 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.

flap is transparent by default; add the `.background <style-classes.html#background>`__ style class to it if this is unwanted.

If 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 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 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 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#

class Flap
classmethod new() Widget#

Creates a new AdwFlap.

Deprecated since version 1.4: See the migration guide

Methods#

class Flap
get_content() Widget | None#

Gets the content widget for self.

Deprecated since version 1.4: See the migration guide

get_flap() Widget | None#

Gets the flap widget for self.

Deprecated since version 1.4: See the migration guide

get_flap_position() PackType#

Gets the flap position for self.

Deprecated since version 1.4: See the migration guide

get_fold_duration() int#

Gets the fold transition animation duration for self, in milliseconds.

Deprecated since version 1.4: See the migration guide

get_fold_policy() FlapFoldPolicy#

Gets the fold policy for self.

Deprecated since version 1.4: See the migration guide

get_fold_threshold_policy() FoldThresholdPolicy#

Gets the fold threshold policy for self.

Deprecated since version 1.4: See the migration guide

get_folded() bool#

Gets whether self is currently folded.

See fold_policy.

Deprecated since version 1.4: See the migration guide

get_locked() bool#

Gets whether self is locked.

Deprecated since version 1.4: See the migration guide

get_modal() bool#

Gets whether self is modal.

Deprecated since version 1.4: See the migration guide

get_reveal_flap() bool#

Gets whether the flap widget is revealed for self.

Deprecated since version 1.4: See the migration guide

get_reveal_params() SpringParams#

Gets the reveal animation spring parameters for self.

Deprecated since version 1.4: See the migration guide

get_reveal_progress() float#

Gets the current reveal progress for self.

0 means fully hidden, 1 means fully revealed.

See reveal_flap.

Deprecated since version 1.4: See the migration guide

get_separator() Widget | None#

Gets the separator widget for self.

Deprecated since version 1.4: See the migration guide

get_swipe_to_close() bool#

Gets whether self can be closed with a swipe gesture.

Deprecated since version 1.4: See the migration guide

get_swipe_to_open() bool#

Gets whether self can be opened with a swipe gesture.

Deprecated since version 1.4: See the migration guide

get_transition_type() FlapTransitionType#

Gets the type of animation used for reveal and fold transitions in self.

Deprecated since version 1.4: See the migration guide

set_content(content: Widget | None = None) None#

Sets the content widget for self.

It’s always displayed when unfolded, and partially visible when folded.

Deprecated since version 1.4: See the migration guide

Parameters:

content – the content widget

set_flap(flap: Widget | None = None) None#

Sets the flap widget for self.

It’s only visible when reveal_progress is greater than 0.

Deprecated since version 1.4: See the migration guide

Parameters:

flap – the flap widget

set_flap_position(position: PackType) None#

Sets the flap position for self.

If it’s set to GTK_PACK_START, the flap is displayed before the content, if GTK_PACK_END, it’s displayed after the content.

Deprecated since version 1.4: See the migration guide

Parameters:

position – the new value

set_fold_duration(duration: int) None#

Sets the fold transition animation duration for self, in milliseconds.

Deprecated since version 1.4: See the migration guide

Parameters:

duration – the new duration, in milliseconds

set_fold_policy(policy: FlapFoldPolicy) None#

Sets the fold policy for self.

Deprecated since version 1.4: See the migration guide

Parameters:

policy – the fold policy

set_fold_threshold_policy(policy: FoldThresholdPolicy) None#

Sets the fold threshold policy for self.

If set to ADW_FOLD_THRESHOLD_POLICY_MINIMUM, flap will only fold when the children cannot fit anymore. With ADW_FOLD_THRESHOLD_POLICY_NATURAL, it will fold as soon as children don’t get their natural size.

This can be useful if you have a long ellipsizing label and want to let it ellipsize instead of immediately folding.

Deprecated since version 1.4: See the migration guide

Parameters:

policy – the policy to use

set_locked(locked: bool) None#

Sets whether self is locked.

If FALSE, folding when the flap is revealed automatically closes it, and unfolding it when the flap is not revealed opens it. If TRUE, reveal_flap value never changes on its own.

Deprecated since version 1.4: See the migration guide

Parameters:

locked – the new value

set_modal(modal: bool) None#

Sets whether self is modal.

If TRUE, clicking the content widget while flap is revealed, as well as pressing the Esc key, will close the flap. If FALSE, clicks are passed through to the content widget.

Deprecated since version 1.4: See the migration guide

Parameters:

modal – whether self is modal

set_reveal_flap(reveal_flap: bool) None#

Sets whether the flap widget is revealed for self.

Deprecated since version 1.4: See the migration guide

Parameters:

reveal_flap – whether to reveal the flap widget

set_reveal_params(params: SpringParams) None#

Sets the reveal animation spring parameters for self.

The default value is equivalent to:

adw_spring_params_new (1, 0.5, 500)

Deprecated since version 1.4: See the migration guide

Parameters:

params – the new parameters

set_separator(separator: Widget | None = None) None#

Sets the separator widget for self.

It’s displayed between content and flap when there’s no shadow to display. When exactly it’s visible depends on the transition_type value.

Deprecated since version 1.4: See the migration guide

Parameters:

separator – the separator widget

set_swipe_to_close(swipe_to_close: bool) None#

Sets whether self can be closed with a swipe gesture.

The area that can be swiped depends on the transition_type value.

Deprecated since version 1.4: See the migration guide

Parameters:

swipe_to_close – whether self can be closed with a swipe gesture

set_swipe_to_open(swipe_to_open: bool) None#

Sets whether self can be opened with a swipe gesture.

The area that can be swiped depends on the transition_type value.

Deprecated since version 1.4: See the migration guide

Parameters:

swipe_to_open – whether self can be opened with a swipe gesture

set_transition_type(transition_type: FlapTransitionType) None#

Sets the type of animation used for reveal and fold transitions in self.

flap is transparent by default, which means the content will be seen through it with ADW_FLAP_TRANSITION_TYPE_OVER transitions; add the `.background <style-classes.html#background>`__ style class to it if this is unwanted.

Deprecated since version 1.4: See the migration guide

Parameters:

transition_type – the new transition type

Properties#

class Flap
props.content: Widget#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.flap: Widget#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.flap_position: PackType#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.fold_duration: int#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.fold_policy: FlapFoldPolicy#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.fold_threshold_policy: FoldThresholdPolicy#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.folded: bool#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.locked: bool#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.modal: bool#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.reveal_flap: bool#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.reveal_params: SpringParams#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.reveal_progress: float#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.separator: Widget#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.swipe_to_close: bool#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.swipe_to_open: bool#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide

props.transition_type: FlapTransitionType#

The type of the None singleton.

Deprecated since version 1.4: See the migration guide