class Adw::NavigationView
Overview
A page-based navigation container.

Adw::NavigationView
presents one child at a time, similar to
Gtk::Stack
.
Adw::NavigationView
can only contain #NavigationPage
children.
It maintains a navigation stack that can be controlled with
NavigationView::push
and NavigationView::pop
. The whole
navigation stack can also be replaced using NavigationView::replace
.
Adw::NavigationView
allows to manage pages statically or dynamically.
Static pages can be added using the NavigationView::add
method. The
Adw::NavigationView
will keep a reference to these pages, but they aren't
accessible to the user until NavigationView::push
is called (except
for the first page, which is pushed automatically). Use the
NavigationView::remove
method to remove them. This is useful for
applications that have a small number of unique pages and just need
navigation between them.
Dynamic pages are automatically destroyed once they are popped off the
navigation stack. To add a page like this, push it using the
NavigationView::push
method without calling
NavigationView::add
first.
Tags
Static pages, as well as any pages in the navigation stack, can be accessed
by their NavigationPage::tag
. For example,
NavigationView::push_by_tag
can be used to push a static page that's
not in the navigation stack without having to keep a reference to it manually.
Header Bar Integration
When used inside Adw::NavigationView
, #HeaderBar
will automatically
display a back button that can be used to go back to the previous page when
possible. The button also has a context menu, allowing to pop multiple pages
at once, potentially across multiple navigation views.
Set [property@HeaderBar:show-back-button] to FALSE
to disable this behavior
in rare scenarios where it's unwanted.
Adw::HeaderBar
will also display the title of the Adw::NavigationPage
it's
placed into, so most applications shouldn't need to customize it at all.
Shortcuts and Gestures
Adw::NavigationView
supports the following shortcuts for going to the
previous page:
- Escape (unless [property@NavigationView:pop-on-escape] is set to
FALSE
) - Alt+←
- Back mouse button
Additionally, it supports interactive gestures:
- One-finger swipe towards the right on touchscreens
- Scrolling towards the right on touchpads (usually two-finger swipe)
These gestures have transitions enabled regardless of the [property@NavigationView:animate-transitions] value.
Applications can also enable shortcuts for pushing another page onto the navigation stack via connecting to the [signal@NavigationView::get-next-page] signal, in that case the following shortcuts are supported:
- Alt+→
- Forward mouse button
- Swipe/scrolling towards the left
For right-to-left locales, the gestures and shortcuts are reversed.
[property@NavigationPage:can-pop] can be used to disable them, along with the header bar back buttons.
Actions
Adw::NavigationView
defines actions for controlling the navigation stack.
actions for controlling the navigation stack:
-
navigation.push
takes a string parameter specifying the tag of the page to push, and is equivalent to callingNavigationView::push_by_tag
. -
navigation.pop
doesn't take any parameters and pops the current page from the navigation stack, equivalent to callingNavigationView::pop
.
Adw::NavigationView
as Gtk::Buildable
Adw::NavigationView
allows to add pages as children, equivalent to using the
NavigationView::add
method.
Example of an Adw::NavigationView
UI definition:
WARNING ⚠️ The following code is in xml ⚠️
<object class="Adw::NavigationView">
<child>
<object class="Adw::NavigationPage">
<property name="title" translatable="yes">Page 1</property>
<property name="child">
<object class="Adw::ToolbarView">
<child type="top">
<object class="Adw::HeaderBar"/>
</child>
<property name="content">
<object class="Gtk::Button">
<property name="label" translatable="yes">Open Page 2</property>
<property name="halign">center</property>
<property name="valign">center</property>
<property name="action-name">navigation.push</property>
<property name="action-target">'page-2'</property>
<style>
<class name="pill"/>
</style>
</object>
</property>
</object>
</property>
</object>
</child>
<child>
<object class="Adw::NavigationPage">
<property name="title" translatable="yes">Page 2</property>
<property name="tag">page-2</property>
<property name="child">
<object class="Adw::ToolbarView">
<child type="top">
<object class="Adw::HeaderBar"/>
</child>
<property name="content">
<!-- ... -->
</property>
</object>
</property>
</object>
</child>
</object>

CSS nodes
Adw::NavigationView
has a single CSS node with the name navigation-view
.
Accessibility
Adw::NavigationView
uses the GTK_ACCESSIBLE_ROLE_GROUP
role.
Included Modules
Defined in:
lib/gi-crystal/src/auto/adw-1/navigation_view.crConstructors
-
.new : self
Creates a new
Adw::NavigationView
. - .new(*, accessible_role : Gtk::AccessibleRole | Nil = nil, animate_transitions : Bool | Nil = nil, can_focus : Bool | Nil = nil, can_target : Bool | Nil = nil, css_classes : Enumerable(String) | Nil = nil, css_name : String | Nil = nil, cursor : Gdk::Cursor | Nil = nil, focus_on_click : Bool | Nil = nil, focusable : Bool | Nil = nil, halign : Gtk::Align | Nil = nil, has_default : Bool | Nil = nil, has_focus : Bool | Nil = nil, has_tooltip : Bool | Nil = nil, height_request : Int32 | Nil = nil, hexpand : Bool | Nil = nil, hexpand_set : Bool | Nil = nil, hhomogeneous : Bool | Nil = nil, layout_manager : Gtk::LayoutManager | Nil = nil, limit_events : Bool | Nil = nil, margin_bottom : Int32 | Nil = nil, margin_end : Int32 | Nil = nil, margin_start : Int32 | Nil = nil, margin_top : Int32 | Nil = nil, name : String | Nil = nil, navigation_stack : Gio::ListModel | Nil = nil, opacity : Float64 | Nil = nil, overflow : Gtk::Overflow | Nil = nil, parent : Gtk::Widget | Nil = nil, pop_on_escape : Bool | Nil = nil, receives_default : Bool | Nil = nil, root : Gtk::Root | Nil = nil, scale_factor : Int32 | Nil = nil, sensitive : Bool | Nil = nil, tooltip_markup : String | Nil = nil, tooltip_text : String | Nil = nil, valign : Gtk::Align | Nil = nil, vexpand : Bool | Nil = nil, vexpand_set : Bool | Nil = nil, vhomogeneous : Bool | Nil = nil, visible : Bool | Nil = nil, visible_page : Adw::NavigationPage | Nil = nil, visible_page_tag : String | Nil = nil, width_request : Int32 | Nil = nil)
Class Method Summary
-
.g_type : UInt64
Returns the type id (GType) registered in GLib type system.
Instance Method Summary
-
#==(other : self)
Returns
true
if this reference is the same as other. -
#add(page : Adw::NavigationPage) : Nil
Permanently adds page to self.
-
#animate_transitions : Bool
Gets whether self animates page transitions.
-
#animate_transitions=(animate_transitions : Bool) : Nil
Sets whether self should animate page transitions.
- #animate_transitions? : Bool
-
#find_page(tag : String) : Adw::NavigationPage | Nil
Finds a page in self by its tag.
- #get_next_page_signal
-
#hash(hasher)
See
Object#hash(hasher)
-
#hhomogeneous : Bool
Gets whether self is horizontally homogeneous.
-
#hhomogeneous=(hhomogeneous : Bool) : Nil
Sets self to be horizontally homogeneous or not.
- #hhomogeneous? : Bool
-
#navigation_stack : Gio::ListModel
Returns a
Gio::ListModel
that contains the pages in navigation stack. -
#pop : Bool
Pops the visible page from the navigation stack.
-
#pop_on_escape : Bool
Gets whether pressing Escape pops the current page on self.
-
#pop_on_escape=(pop_on_escape : Bool) : Nil
Sets whether pressing Escape pops the current page on self.
- #pop_on_escape? : Bool
-
#pop_to_page(page : Adw::NavigationPage) : Bool
Pops pages from the navigation stack until page is visible.
-
#pop_to_tag(tag : String) : Bool
Pops pages from the navigation stack until page with the tag tag is visible.
- #popped_signal
-
#previous_page(page : Adw::NavigationPage) : Adw::NavigationPage | Nil
Gets the previous page for page.
-
#push(page : Adw::NavigationPage) : Nil
Pushes page onto the navigation stack.
-
#push_by_tag(tag : String) : Nil
Pushes the page with the tag tag onto the navigation stack.
- #pushed_signal
-
#remove(page : Adw::NavigationPage) : Nil
Removes page from self.
-
#replace(pages : Enumerable(Adw::NavigationPage)) : Nil
Replaces the current navigation stack with pages.
- #replace(*pages : Adw::NavigationPage)
-
#replace_with_tags(tags : Enumerable(String)) : Nil
Replaces the current navigation stack with pages with the tags tags.
- #replace_with_tags(*tags : String)
- #replaced_signal
-
#vhomogeneous : Bool
Gets whether self is vertically homogeneous.
-
#vhomogeneous=(vhomogeneous : Bool) : Nil
Sets self to be vertically homogeneous or not.
- #vhomogeneous? : Bool
-
#visible_page : Adw::NavigationPage | Nil
Gets the currently visible page in self.
-
#visible_page_tag : String | Nil
Gets the tag of the currently visible page in self.
-
#visible_page_tag? : String | Nil
Same as
#visible_page_tag
, but can return nil.
Instance methods inherited from module Adw::Swipeable
cancel_progress : Float64
cancel_progress,
distance : Float64
distance,
progress : Float64
progress,
snap_points : Enumerable(Float64)
snap_points,
swipe_area(navigation_direction : Adw::NavigationDirection, is_drag : Bool) : Gdk::Rectangle
swipe_area,
to_unsafe
to_unsafe
Constructor methods inherited from module Adw::Swipeable
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Adw::Swipeable
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::ConstraintTarget
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::ConstraintTarget
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::ConstraintTarget
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::Buildable
buildable_id : String | Nil
buildable_id,
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::Buildable
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::Buildable
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::Accessible
accessible_parent : Gtk::Accessible | Nil
accessible_parent,
accessible_role : Gtk::AccessibleRole
accessible_role,
accessible_role=(value : Gtk::AccessibleRole) : Gtk::AccessibleRole
accessible_role=,
announce(message : String, priority : Gtk::AccessibleAnnouncementPriority) : Nil
announce,
at_context : Gtk::ATContext
at_context,
bounds(x : Int32, y : Int32, width : Int32, height : Int32) : Bool
bounds,
first_accessible_child : Gtk::Accessible | Nil
first_accessible_child,
next_accessible_sibling : Gtk::Accessible | Nil
next_accessible_sibling,
platform_state(state : Gtk::AccessiblePlatformState) : Bool
platform_state,
reset_property(property : Gtk::AccessibleProperty) : Nil
reset_property,
reset_relation(relation : Gtk::AccessibleRelation) : Nil
reset_relation,
reset_state(state : Gtk::AccessibleState) : Nil
reset_state,
set_accessible_parent(parent : Gtk::Accessible | Nil, next_sibling : Gtk::Accessible | Nil) : Nil
set_accessible_parent,
to_unsafe
to_unsafe,
update_next_accessible_sibling(new_sibling : Gtk::Accessible | Nil) : Nil
update_next_accessible_sibling,
update_platform_state(state : Gtk::AccessiblePlatformState) : Nil
update_platform_state,
update_property(properties : Enumerable(Gtk::AccessibleProperty), values : Enumerable(_)) : Nil
update_property,
update_relation(relations : Enumerable(Gtk::AccessibleRelation), values : Enumerable(_)) : Nil
update_relation,
update_state(states : Enumerable(Gtk::AccessibleState), values : Enumerable(_)) : Nil
update_state
Constructor methods inherited from module Gtk::Accessible
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::Accessible
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from class Gtk::Widget
==(other : self)
==,
action_set_enabled(action_name : String, enabled : Bool) : Nil
action_set_enabled,
activate : Bool
activate,
activate_action(name : String, args : _ | Nil) : Bool
activate_action,
activate_default : Nil
activate_default,
add_controller(controller : Gtk::EventController) : Nil
add_controller,
add_css_class(css_class : String) : Nil
add_css_class,
add_mnemonic_label(label : Gtk::Widget) : Nil
add_mnemonic_label,
add_tick_callback(callback : Gtk::TickCallback) : UInt32
add_tick_callback,
allocate(width : Int32, height : Int32, baseline : Int32, transform : Gsk::Transform | Nil) : Nil
allocate,
allocated_baseline : Int32
allocated_baseline,
allocated_height : Int32
allocated_height,
allocated_width : Int32
allocated_width,
allocation : Gdk::Rectangle
allocation,
ancestor(widget_type : UInt64) : Gtk::Widget | Nil
ancestor,
baseline : Int32
baseline,
can_focus : Bool
can_focus,
can_focus=(can_focus : Bool) : Nil
can_focus=,
can_focus? : Bool
can_focus?,
can_target : Bool
can_target,
can_target=(can_target : Bool) : Nil
can_target=,
can_target? : Bool
can_target?,
child_focus(direction : Gtk::DirectionType) : Bool
child_focus,
child_visible : Bool
child_visible,
child_visible=(child_visible : Bool) : Nil
child_visible=,
clipboard : Gdk::Clipboard
clipboard,
color : Gdk::RGBA
color,
compute_bounds(target : Gtk::Widget) : Graphene::Rect
compute_bounds,
compute_expand(orientation : Gtk::Orientation) : Bool
compute_expand,
compute_point(target : Gtk::Widget, point : Graphene::Point) : Graphene::Point
compute_point,
compute_transform(target : Gtk::Widget) : Graphene::Matrix
compute_transform,
contains(x : Float64, y : Float64) : Bool
contains,
create_pango_context : Pango::Context
create_pango_context,
create_pango_layout(text : String | Nil) : Pango::Layout
create_pango_layout,
css_classes : Enumerable(String)
css_classes,
css_classes=(classes : Enumerable(String)) : Nil
css_classes=,
css_name : String
css_name,
css_name=(value : String) : Stringcss_name=(value : Nil) : Nil css_name=, css_name? : String | Nil css_name?, cursor : Gdk::Cursor | Nil cursor, cursor=(cursor : Gdk::Cursor | Nil) : Nil cursor=, cursor_from_name=(name : String | Nil) : Nil cursor_from_name=, destroy_signal destroy_signal, direction : Gtk::TextDirection direction, direction=(dir : Gtk::TextDirection) : Nil direction=, direction_changed_signal direction_changed_signal, display : Gdk::Display display, dispose_template(widget_type : UInt64) : Nil dispose_template, drag_check_threshold(start_x : Int32, start_y : Int32, current_x : Int32, current_y : Int32) : Bool drag_check_threshold, error_bell : Nil error_bell, first_child : Gtk::Widget | Nil first_child, focus_child : Gtk::Widget | Nil focus_child, focus_child=(child : Gtk::Widget | Nil) : Nil focus_child=, focus_on_click : Bool focus_on_click, focus_on_click=(focus_on_click : Bool) : Nil focus_on_click=, focus_on_click? : Bool focus_on_click?, focusable : Bool focusable, focusable=(focusable : Bool) : Nil focusable=, focusable? : Bool focusable?, font_map : Pango::FontMap | Nil font_map, font_map=(font_map : Pango::FontMap | Nil) : Nil font_map=, font_options : Cairo::FontOptions | Nil font_options, font_options=(options : Cairo::FontOptions | Nil) : Nil font_options=, frame_clock : Gdk::FrameClock | Nil frame_clock, grab_focus : Bool grab_focus, halign : Gtk::Align halign, halign=(align : Gtk::Align) : Nil halign=, has_css_class(css_class : String) : Bool has_css_class, has_default : Bool has_default, has_default? : Bool has_default?, has_focus : Bool has_focus, has_focus? : Bool has_focus?, has_tooltip : Bool has_tooltip, has_tooltip=(has_tooltip : Bool) : Nil has_tooltip=, has_tooltip? : Bool has_tooltip?, has_visible_focus : Bool has_visible_focus, hash(hasher) hash, height : Int32 height, height_request : Int32 height_request, height_request=(value : Int32) : Int32 height_request=, hexpand : Bool hexpand, hexpand=(expand : Bool) : Nil hexpand=, hexpand? : Bool hexpand?, hexpand_set : Bool hexpand_set, hexpand_set=(set : Bool) : Nil hexpand_set=, hexpand_set? : Bool hexpand_set?, hide : Nil hide, hide_signal hide_signal, in_destruction : Bool in_destruction, init_template : Nil init_template, insert_action_group(name : String, group : Gio::ActionGroup | Nil) : Nil insert_action_group, insert_after(parent : Gtk::Widget, previous_sibling : Gtk::Widget | Nil) : Nil insert_after, insert_before(parent : Gtk::Widget, next_sibling : Gtk::Widget | Nil) : Nil insert_before, is_ancestor(ancestor : Gtk::Widget) : Bool is_ancestor, is_drawable : Bool is_drawable, is_focus : Bool is_focus, is_sensitive? : Bool is_sensitive?, is_visible? : Bool is_visible?, keynav_failed(direction : Gtk::DirectionType) : Bool keynav_failed, keynav_failed_signal keynav_failed_signal, last_child : Gtk::Widget | Nil last_child, layout_manager : Gtk::LayoutManager | Nil layout_manager, layout_manager=(layout_manager : Gtk::LayoutManager | Nil) : Nil layout_manager=, limit_events : Bool limit_events, limit_events=(limit_events : Bool) : Nil limit_events=, limit_events? : Bool limit_events?, list_mnemonic_labels : GLib::List list_mnemonic_labels, map : Nil map, map_signal map_signal, mapped : Bool mapped, margin_bottom : Int32 margin_bottom, margin_bottom=(margin : Int32) : Nil margin_bottom=, margin_end : Int32 margin_end, margin_end=(margin : Int32) : Nil margin_end=, margin_start : Int32 margin_start, margin_start=(margin : Int32) : Nil margin_start=, margin_top : Int32 margin_top, margin_top=(margin : Int32) : Nil margin_top=, measure(orientation : Gtk::Orientation, for_size : Int32) : Nil measure, mnemonic_activate(group_cycling : Bool) : Bool mnemonic_activate, mnemonic_activate_signal mnemonic_activate_signal, move_focus_signal move_focus_signal, name : String name, name=(name : String) : Nil
name=(value : Nil) : Nil name=, name? : String | Nil name?, native : Gtk::Native | Nil native, next_sibling : Gtk::Widget | Nil next_sibling, observe_children : Gio::ListModel observe_children, observe_controllers : Gio::ListModel observe_controllers, opacity : Float64 opacity, opacity=(opacity : Float64) : Nil opacity=, overflow : Gtk::Overflow overflow, overflow=(overflow : Gtk::Overflow) : Nil overflow=, pango_context : Pango::Context pango_context, parent : Gtk::Widget | Nil parent, parent=(parent : Gtk::Widget) : Nil parent=, pick(x : Float64, y : Float64, flags : Gtk::PickFlags) : Gtk::Widget | Nil pick, preferred_size : Gtk::Requisition preferred_size, prev_sibling : Gtk::Widget | Nil prev_sibling, primary_clipboard : Gdk::Clipboard primary_clipboard, query_tooltip_signal query_tooltip_signal, queue_allocate : Nil queue_allocate, queue_draw : Nil queue_draw, queue_resize : Nil queue_resize, realize : Nil realize, realize_signal realize_signal, realized : Bool realized, receives_default : Bool receives_default, receives_default=(receives_default : Bool) : Nil receives_default=, receives_default? : Bool receives_default?, remove_controller(controller : Gtk::EventController) : Nil remove_controller, remove_css_class(css_class : String) : Nil remove_css_class, remove_mnemonic_label(label : Gtk::Widget) : Nil remove_mnemonic_label, remove_tick_callback(id : UInt32) : Nil remove_tick_callback, request_mode : Gtk::SizeRequestMode request_mode, root : Gtk::Root | Nil root, scale_factor : Int32 scale_factor, sensitive : Bool sensitive, sensitive=(sensitive : Bool) : Nil sensitive=, sensitive? : Bool sensitive?, set_size_request(width : Int32, height : Int32) : Nil set_size_request, set_state_flags(flags : Gtk::StateFlags, clear : Bool) : Nil set_state_flags, settings : Gtk::Settings settings, should_layout : Bool should_layout, show : Nil show, show_signal show_signal, size(orientation : Gtk::Orientation) : Int32 size, size_allocate(allocation : Gdk::Rectangle, baseline : Int32) : Nil size_allocate, size_request : Nil size_request, snapshot_child(child : Gtk::Widget, snapshot : Gtk::Snapshot) : Nil snapshot_child, state_flags : Gtk::StateFlags state_flags, state_flags_changed_signal state_flags_changed_signal, style_context : Gtk::StyleContext style_context, tooltip_markup : String | Nil tooltip_markup, tooltip_markup=(value : String) : String
tooltip_markup=(value : Nil) : Nil
tooltip_markup=(markup : String | Nil) : Nil tooltip_markup=, tooltip_markup? : String | Nil tooltip_markup?, tooltip_text : String | Nil tooltip_text, tooltip_text=(value : String) : String
tooltip_text=(value : Nil) : Nil
tooltip_text=(text : String | Nil) : Nil tooltip_text=, tooltip_text? : String | Nil tooltip_text?, translate_coordinates(dest_widget : Gtk::Widget, src_x : Float64, src_y : Float64) : Bool translate_coordinates, trigger_tooltip_query : Nil trigger_tooltip_query, unmap : Nil unmap, unmap_signal unmap_signal, unparent : Nil unparent, unrealize : Nil unrealize, unrealize_signal unrealize_signal, unset_state_flags(flags : Gtk::StateFlags) : Nil unset_state_flags, valign : Gtk::Align valign, valign=(align : Gtk::Align) : Nil valign=, vexpand : Bool vexpand, vexpand=(expand : Bool) : Nil vexpand=, vexpand? : Bool vexpand?, vexpand_set : Bool vexpand_set, vexpand_set=(set : Bool) : Nil vexpand_set=, vexpand_set? : Bool vexpand_set?, visible : Bool visible, visible=(visible : Bool) : Nil visible=, visible? : Bool visible?, width : Int32 width, width_request : Int32 width_request, width_request=(value : Int32) : Int32 width_request=
Constructor methods inherited from class Gtk::Widget
newnew(*, accessible_role : Gtk::AccessibleRole | Nil = nil, can_focus : Bool | Nil = nil, can_target : Bool | Nil = nil, css_classes : Enumerable(String) | Nil = nil, css_name : String | Nil = nil, cursor : Gdk::Cursor | Nil = nil, focus_on_click : Bool | Nil = nil, focusable : Bool | Nil = nil, halign : Gtk::Align | Nil = nil, has_default : Bool | Nil = nil, has_focus : Bool | Nil = nil, has_tooltip : Bool | Nil = nil, height_request : Int32 | Nil = nil, hexpand : Bool | Nil = nil, hexpand_set : Bool | Nil = nil, layout_manager : Gtk::LayoutManager | Nil = nil, limit_events : Bool | Nil = nil, margin_bottom : Int32 | Nil = nil, margin_end : Int32 | Nil = nil, margin_start : Int32 | Nil = nil, margin_top : Int32 | Nil = nil, name : String | Nil = nil, opacity : Float64 | Nil = nil, overflow : Gtk::Overflow | Nil = nil, parent : Gtk::Widget | Nil = nil, receives_default : Bool | Nil = nil, root : Gtk::Root | Nil = nil, scale_factor : Int32 | Nil = nil, sensitive : Bool | Nil = nil, tooltip_markup : String | Nil = nil, tooltip_text : String | Nil = nil, valign : Gtk::Align | Nil = nil, vexpand : Bool | Nil = nil, vexpand_set : Bool | Nil = nil, visible : Bool | Nil = nil, width_request : Int32 | Nil = nil) new
Class methods inherited from class Gtk::Widget
default_direction : Gtk::TextDirection
default_direction,
default_direction=(dir : Gtk::TextDirection) : Nil
default_direction=,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::ConstraintTarget
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::ConstraintTarget
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::ConstraintTarget
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::Buildable
buildable_id : String | Nil
buildable_id,
to_unsafe
to_unsafe
Constructor methods inherited from module Gtk::Buildable
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::Buildable
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from module Gtk::Accessible
accessible_parent : Gtk::Accessible | Nil
accessible_parent,
accessible_role : Gtk::AccessibleRole
accessible_role,
accessible_role=(value : Gtk::AccessibleRole) : Gtk::AccessibleRole
accessible_role=,
announce(message : String, priority : Gtk::AccessibleAnnouncementPriority) : Nil
announce,
at_context : Gtk::ATContext
at_context,
bounds(x : Int32, y : Int32, width : Int32, height : Int32) : Bool
bounds,
first_accessible_child : Gtk::Accessible | Nil
first_accessible_child,
next_accessible_sibling : Gtk::Accessible | Nil
next_accessible_sibling,
platform_state(state : Gtk::AccessiblePlatformState) : Bool
platform_state,
reset_property(property : Gtk::AccessibleProperty) : Nil
reset_property,
reset_relation(relation : Gtk::AccessibleRelation) : Nil
reset_relation,
reset_state(state : Gtk::AccessibleState) : Nil
reset_state,
set_accessible_parent(parent : Gtk::Accessible | Nil, next_sibling : Gtk::Accessible | Nil) : Nil
set_accessible_parent,
to_unsafe
to_unsafe,
update_next_accessible_sibling(new_sibling : Gtk::Accessible | Nil) : Nil
update_next_accessible_sibling,
update_platform_state(state : Gtk::AccessiblePlatformState) : Nil
update_platform_state,
update_property(properties : Enumerable(Gtk::AccessibleProperty), values : Enumerable(_)) : Nil
update_property,
update_relation(relations : Enumerable(Gtk::AccessibleRelation), values : Enumerable(_)) : Nil
update_relation,
update_state(states : Enumerable(Gtk::AccessibleState), values : Enumerable(_)) : Nil
update_state
Constructor methods inherited from module Gtk::Accessible
cast(obj : GObject::Object) : self
cast
Class methods inherited from module Gtk::Accessible
cast?(obj : GObject::Object) : self | Nil
cast?,
g_type : UInt64
g_type
Instance methods inherited from class GObject::InitiallyUnowned
==(other : self)
==,
hash(hasher)
hash
Constructor methods inherited from class GObject::InitiallyUnowned
new
new
Class methods inherited from class GObject::InitiallyUnowned
g_type : UInt64
g_type
Instance methods inherited from class GObject::Object
==(other : self)
==,
bind_property(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags) : GObject::Binding
bind_property,
bind_property_full(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags, transform_to : GObject::Closure, transform_from : GObject::Closure) : GObject::Binding
bind_property_full,
data(key : String) : Pointer(Void) | Nil
data,
finalize
finalize,
freeze_notify : Nil
freeze_notify,
getv(names : Enumerable(String), values : Enumerable(_)) : Nil
getv,
hash(hasher)
hash,
notify(property_name : String) : Nil
notify,
notify_by_pspec(pspec : GObject::ParamSpec) : Nil
notify_by_pspec,
notify_signal
notify_signal,
property(property_name : String, value : _) : Nil
property,
qdata(quark : UInt32) : Pointer(Void) | Nil
qdata,
ref_count : UInt32
ref_count,
run_dispose : Nil
run_dispose,
set_data(key : String, data : Pointer(Void) | Nil) : Nil
set_data,
set_property(property_name : String, value : _) : Nil
set_property,
steal_data(key : String) : Pointer(Void) | Nil
steal_data,
steal_qdata(quark : UInt32) : Pointer(Void) | Nil
steal_qdata,
thaw_notify : Nil
thaw_notify,
to_unsafe : Pointer(Void)
to_unsafe,
watch_closure(closure : GObject::Closure) : Nil
watch_closure
Constructor methods inherited from class GObject::Object
cast(obj : GObject::Object) : self
cast,
new(pointer : Pointer(Void), transfer : GICrystal::Transfer)new new, newv(object_type : UInt64, parameters : Enumerable(GObject::Parameter)) : self newv
Class methods inherited from class GObject::Object
cast?(obj : GObject::Object) : self | Nil
cast?,
compat_control(what : UInt64, data : Pointer(Void) | Nil) : UInt64
compat_control,
g_type : UInt64
g_type,
interface_find_property(g_iface : GObject::TypeInterface, property_name : String) : GObject::ParamSpec
interface_find_property,
interface_list_properties(g_iface : GObject::TypeInterface) : Enumerable(GObject::ParamSpec)
interface_list_properties
Macros inherited from class GObject::Object
previous_vfunc(*args)
previous_vfunc,
previous_vfunc!(*args)
previous_vfunc!,
signal(signature)
signal
Constructor Detail
Class Method Detail
Instance Method Detail
Returns true
if this reference is the same as other. Invokes same?
.
Sets whether self should animate page transitions.
Gesture-based transitions are always animated.
Sets self to be horizontally homogeneous or not.
If the view is horizontally homogeneous, it allocates the same width for all pages.
If it's not, the view may change width when a different page becomes visible.
Pops the visible page from the navigation stack.
Does nothing if the navigation stack contains less than two pages.
If NavigationView::add
hasn't been called, the page is automatically
removed.
NavigationView::#popped
will be emitted for the current visible page.
See NavigationView::pop_to_page
and
NavigationView::pop_to_tag
.
Sets whether pressing Escape pops the current page on self.
Applications using Adw::NavigationView
to implement a browser may want to
disable it.
Pops pages from the navigation stack until page with the tag tag is visible.
The page must be in the navigation stack.
If NavigationView::add
hasn't been called for any of the popped pages,
they are automatically removed.
NavigationView::#popped
will be emitted for each of the popped pages.
See NavigationView::pop_to_page
and NavigationPage::tag
.
Pushes the page with the tag tag onto the navigation stack.
If NavigationView::add
hasn't been called, the page is automatically
removed once it's popped.
NavigationView::#pushed
will be emitted for the page.
See NavigationView::push
and NavigationPage::tag
.
Replaces the current navigation stack with pages with the tags tags.
The last page becomes the visible page.
Replacing the navigation stack has no animation.
If NavigationView::add
hasn't been called for any pages that are no
longer in the navigation stack, they are automatically removed.
n_tags can be 0, in that case no page will be visible after calling this
method. This can be useful for removing all pages from self.
The NavigationView::#replaced
signal will be emitted.
See NavigationView::replace
and NavigationPage::tag
.
Sets self to be vertically homogeneous or not.
If the view is vertically homogeneous, it allocates the same height for all pages.
If it's not, the view may change height when a different page becomes visible.