Class

AdwViewSwitcher

Description [src]

final class Adw.ViewSwitcher : Gtk.Widget
  implements Gtk.Accessible, Gtk.Buildable, Gtk.ConstraintTarget {
  /* No available fields */
}

An adaptive view switcher.

view-switcher

An adaptive view switcher designed to switch between multiple views contained in a AdwViewStack in a similar fashion to GtkStackSwitcher.

AdwViewSwitcher buttons always have an icon and a label. They can be displayed side by side, or icon on top of the label. This can be controlled via the AdwViewSwitcher:policy property.

AdwViewSwitcher is intended to be used in a header bar together with AdwViewSwitcherBar at the bottom of the window, and a AdwBreakpoint showing the view switcher bar on narrow sizes, while removing the view switcher from the header bar, as follows:

<object class="AdwWindow">
  <property name="width-request">360</property>
  <property name="height-request">200</property>
  <child>
    <object class="AdwBreakpoint">
      <condition>max-width: 550sp</condition>
      <setter object="switcher_bar" property="reveal">True</setter>
      <setter object="header_bar" property="title-widget"/>
    </object>
  </child>
  <property name="content">
    <object class="AdwToolbarView">
      <child type="top">
        <object class="AdwHeaderBar" id="header_bar">
          <property name="title-widget">
            <object class="AdwViewSwitcher">
              <property name="stack">stack</property>
              <property name="policy">wide</property>
            </object>
          </property>
        </object>
      </child>
      <property name="content">
        <object class="AdwViewStack" id="stack"/>
      </property>
      <child type="bottom">
        <object class="AdwViewSwitcherBar" id="switcher_bar">
          <property name="stack">stack</property>
        </object>
      </child>
    </object>
  </property>
</object>

It’s recommended to set AdwViewSwitcher:policy to ADW_VIEW_SWITCHER_POLICY_WIDE in this case.

You may have to adjust the breakpoint condition for your specific pages.

CSS nodes

AdwViewSwitcher has a single CSS node with name viewswitcher. It can have the style classes .wide and .narrow, matching its policy.

Accessibility

AdwViewSwitcher uses the GTK_ACCESSIBLE_ROLE_TAB_LIST role and uses the GTK_ACCESSIBLE_ROLE_TAB for its buttons.

Hierarchy

hierarchy this AdwViewSwitcher implements_0 GtkAccessible this--implements_0 implements_1 GtkBuildable this--implements_1 implements_2 GtkConstraintTarget this--implements_2 ancestor_0 GtkWidget ancestor_0--this ancestor_1 GInitiallyUnowned ancestor_1--ancestor_0 ancestor_2 GObject ancestor_2--ancestor_1

Constructors

adw_view_switcher_new

Creates a new AdwViewSwitcher.

Instance methods

adw_view_switcher_get_policy

Gets the policy of self.

adw_view_switcher_get_stack

Gets the stack controlled by self.

adw_view_switcher_set_policy

Sets the policy of self.

adw_view_switcher_set_stack

Sets the stack controlled by self.

Methods inherited from GtkWidget (162)

Please see GtkWidget for a full list of methods.

Methods inherited from GObject (43)

Please see GObject for a full list of methods.

Methods inherited from GtkAccessible (19)
gtk_accessible_announce

Requests the user’s screen reader to announce the given message.

gtk_accessible_get_accessible_parent

Retrieves the accessible parent for an accessible object.

gtk_accessible_get_accessible_role

Retrieves the accessible role of an accessible object.

gtk_accessible_get_at_context

Retrieves the accessible implementation for the given GtkAccessible.

gtk_accessible_get_bounds

Queries the coordinates and dimensions of this accessible.

gtk_accessible_get_first_accessible_child

Retrieves the first accessible child of an accessible object.

gtk_accessible_get_next_accessible_sibling

Retrieves the next accessible sibling of an accessible object.

gtk_accessible_get_platform_state

Query a platform state, such as focus.

gtk_accessible_reset_property

Resets the accessible property to its default value.

gtk_accessible_reset_relation

Resets the accessible relation to its default value.

gtk_accessible_reset_state

Resets the accessible state to its default value.

gtk_accessible_set_accessible_parent

Sets the parent and sibling of an accessible object.

gtk_accessible_update_next_accessible_sibling

Updates the next accessible sibling of self.

gtk_accessible_update_property

Updates a list of accessible properties.

gtk_accessible_update_property_value

Updates an array of accessible properties.

gtk_accessible_update_relation

Updates a list of accessible relations.

gtk_accessible_update_relation_value

Updates an array of accessible relations.

gtk_accessible_update_state

Updates a list of accessible states. See the GtkAccessibleState documentation for the value types of accessible states.

gtk_accessible_update_state_value

Updates an array of accessible states.

Methods inherited from GtkBuildable (1)
gtk_buildable_get_buildable_id

Gets the ID of the buildable object.

Properties

Adw.ViewSwitcher:policy

The policy to determine which mode to use.

Adw.ViewSwitcher:stack

The stack the view switcher controls.

Properties inherited from GtkWidget (34)
Gtk.Widget:can-focus

Whether the widget or any of its descendents can accept the input focus.

Gtk.Widget:can-target

Whether the widget can receive pointer events.

Gtk.Widget:css-classes

A list of css classes applied to this widget.

Gtk.Widget:css-name

The name of this widget in the CSS tree.

Gtk.Widget:cursor

The cursor used by widget.

Gtk.Widget:focus-on-click

Whether the widget should grab focus when it is clicked with the mouse.

Gtk.Widget:focusable

Whether this widget itself will accept the input focus.

Gtk.Widget:halign

How to distribute horizontal space if widget gets extra space.

Gtk.Widget:has-default

Whether the widget is the default widget.

Gtk.Widget:has-focus

Whether the widget has the input focus.

Gtk.Widget:has-tooltip

Enables or disables the emission of the ::query-tooltip signal on widget.

Gtk.Widget:height-request

Override for height request of the widget.

Gtk.Widget:hexpand

Whether to expand horizontally.

Gtk.Widget:hexpand-set

Whether to use the hexpand property.

Gtk.Widget:layout-manager

The GtkLayoutManager instance to use to compute the preferred size of the widget, and allocate its children.

Gtk.Widget:margin-bottom

Margin on bottom side of widget.

Gtk.Widget:margin-end

Margin on end of widget, horizontally.

Gtk.Widget:margin-start

Margin on start of widget, horizontally.

Gtk.Widget:margin-top

Margin on top side of widget.

Gtk.Widget:name

The name of the widget.

Gtk.Widget:opacity

The requested opacity of the widget.

Gtk.Widget:overflow

How content outside the widget’s content area is treated.

Gtk.Widget:parent

The parent widget of this widget.

Gtk.Widget:receives-default

Whether the widget will receive the default action when it is focused.

Gtk.Widget:root

The GtkRoot widget of the widget tree containing this widget.

Gtk.Widget:scale-factor

The scale factor of the widget.

Gtk.Widget:sensitive

Whether the widget responds to input.

Gtk.Widget:tooltip-markup

Sets the text of tooltip to be the given string, which is marked up with Pango markup.

Gtk.Widget:tooltip-text

Sets the text of tooltip to be the given string.

Gtk.Widget:valign

How to distribute vertical space if widget gets extra space.

Gtk.Widget:vexpand

Whether to expand vertically.

Gtk.Widget:vexpand-set

Whether to use the vexpand property.

Gtk.Widget:visible

Whether the widget is visible.

Gtk.Widget:width-request

Override for width request of the widget.

Properties inherited from GtkAccessible (1)
Gtk.Accessible:accessible-role

The accessible role of the given GtkAccessible implementation.

Signals

Signals inherited from GtkWidget (13)
GtkWidget::destroy

Signals that all holders of a reference to the widget should release the reference that they hold.

GtkWidget::direction-changed

Emitted when the text direction of a widget changes.

GtkWidget::hide

Emitted when widget is hidden.

GtkWidget::keynav-failed

Emitted if keyboard navigation fails.

GtkWidget::map

Emitted when widget is going to be mapped.

GtkWidget::mnemonic-activate

Emitted when a widget is activated via a mnemonic.

GtkWidget::move-focus

Emitted when the focus is moved.

GtkWidget::query-tooltip

Emitted when the widget’s tooltip is about to be shown.

GtkWidget::realize

Emitted when widget is associated with a GdkSurface.

GtkWidget::show

Emitted when widget is shown.

GtkWidget::state-flags-changed

Emitted when the widget state changes.

GtkWidget::unmap

Emitted when widget is going to be unmapped.

GtkWidget::unrealize

Emitted when the GdkSurface associated with widget is destroyed.

Signals inherited from GObject (1)
GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

Class structure

struct AdwViewSwitcherClass {
  GtkWidgetClass parent_class;
  
}

No description available.

Class members
parent_class: GtkWidgetClass

No description available.