Adw.TabOverview
Description: Reference for Adw.TabOverview

### Class

# AdwTabOverview

since: 1.3

#### Description [src]

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

A tab overview for `AdwTabView`.

`AdwTabOverview` is a widget that can display tabs from an `AdwTabView` in a grid.

`AdwTabOverview` shows a thumbnail for each tab. By default thumbnails are static for all pages except the selected one. They can be made always live by setting `AdwTabPage:live-thumbnail` to `TRUE`, or refreshed with `adw_tab_page_invalidate_thumbnail()` or `adw_tab_view_invalidate_thumbnails()` otherwise.

If the pages are too tall or too wide, the thumbnails will be cropped; use `AdwTabPage:thumbnail-xalign` and `AdwTabPage:thumbnail-yalign` to control which part of the page should be visible in this case.

Pinned tabs are shown as smaller cards without thumbnails above the other tabs. Unlike in `AdwTabBar`, they still have titles, as well as an unpin button.

`AdwTabOverview` provides search in open tabs. It searches in tab titles and tooltips, as well as `AdwTabPage:keyword`.

If `AdwTabOverview:enable-new-tab` is set to `TRUE`, a new tab button will be shown. Connect to the `AdwTabOverview::create-tab` signal to use it.

`AdwTabOverview:secondary-menu` can be used to provide a secondary menu for the overview. Use it to add extra actions, e.g. to open a new window or undo closed tab.

`AdwTabOverview` is intended to be used as the direct child of the window, with the rest of the window contents set as the `AdwTabOverview:child`. The child is expected to contain an `AdwTabView`.

`AdwTabOverview` shows window buttons by default. They can be disabled by setting `AdwTabOverview:show-start-title-buttons` and/or `AdwTabOverview:show-start-title-buttons` and/or `AdwTabOverview:show-end-title-buttons` to `FALSE`.

If search and window buttons are disabled, and secondary menu is not set, the header bar will be hidden.

## Drag-and-Drop

`AdwTabOverview` thumbnails can have an additional drop target for arbitrary content.

Use `adw_tab_overview_setup_extra_drop_target()` to set it up, specifying the supported content types and drag actions, then connect to `AdwTabOverview::extra-drag-drop` to handle a drop.

In some cases, it may be necessary to determine the used action based on the content. In that case, set `AdwTabOverview:extra-drag-preload` to `TRUE` and connect to `AdwTabOverview::extra-drag-value` signal, then return the action from its handler. To access this action from the `AdwTabOverview::extra-drag-drop` handler, use the `AdwTabOverview:extra-drag-preferred-action` property.

`AdwTabOverview::extra-drag-value` is also always emitted when starting to hover an item, with a `NULL` value. This happens even when `AdwTabOverview:extra-drag-preload` is `FALSE`.

## Actions

`AdwTabOverview` defines the `overview.open` and `overview.close` actions for opening and closing itself. They can be convenient when used together with `AdwTabButton`.

## CSS nodes

`AdwTabOverview` has a single CSS node with name `taboverview`.

Available since: 1.3

#### Hierarchy

#### Ancestors

- GtkWidget
- GInitiallyUnowned
- GObject

#### Implements

- GtkAccessible
- GtkBuildable
- GtkConstraintTarget

#### Constructors

###### adw_tab_overview_new

Creates a new `AdwTabOverview`.

since: 1.3

#### Instance methods

###### adw_tab_overview_get_child

Gets the child widget of `self`.

since: 1.3

###### adw_tab_overview_get_enable_new_tab

Gets whether to new tab button is enabled for `self`.

since: 1.3

###### adw_tab_overview_get_enable_search

Gets whether search in tabs is enabled for `self`.

since: 1.3

###### adw_tab_overview_get_extra_drag_preferred_action

Gets the current action during a drop on the extra_drop_target.

since: 1.4

###### adw_tab_overview_get_extra_drag_preload

Gets the current drag action during a drop.

since: 1.3

###### adw_tab_overview_get_inverted

Gets whether thumbnails use inverted layout.

since: 1.3

###### adw_tab_overview_get_open

Gets whether `self` is open.

since: 1.3

###### adw_tab_overview_get_search_active

Gets whether search is currently active for `self`.

since: 1.3

###### adw_tab_overview_get_secondary_menu

Gets the secondary menu model for `self`.

since: 1.3

###### adw_tab_overview_get_show_end_title_buttons

Gets whether end title buttons are shown in `self`‘s header bar.

since: 1.3

###### adw_tab_overview_get_show_start_title_buttons

Gets whether start title buttons are shown in `self`‘s header bar.

since: 1.3

###### adw_tab_overview_get_view

Gets the tab view `self` controls.

since: 1.3

###### adw_tab_overview_set_child

Sets the child widget of `self`.

since: 1.3

###### adw_tab_overview_set_enable_new_tab

Sets whether to enable new tab button for `self`.

since: 1.3

###### adw_tab_overview_set_enable_search

Sets whether to enable search in tabs for `self`.

since: 1.3

###### adw_tab_overview_set_extra_drag_preload

Sets whether drop data should be preloaded on hover.

since: 1.3

###### adw_tab_overview_set_inverted

Sets whether thumbnails use inverted layout.

since: 1.3

###### adw_tab_overview_set_open

Sets whether the to open `self`.

since: 1.3

###### adw_tab_overview_set_secondary_menu

Sets the secondary menu model for `self`.

since: 1.3

###### adw_tab_overview_set_show_end_title_buttons

Sets whether to show end title buttons in `self`‘s header bar.

since: 1.3

###### adw_tab_overview_set_show_start_title_buttons

Sets whether to show start title buttons in `self`‘s header bar.

since: 1.3

###### adw_tab_overview_set_view

Sets the tab view to control.

since: 1.3

###### adw_tab_overview_setup_extra_drop_target

Sets up an extra drop target on tabs.

since: 1.3

##### Methods inherited from GtkWidget (164)

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 (21)

###### gtk_accessible_announce

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

###### gtk_accessible_get_accessible_id

Retrieves the accessible identifier for the accessible object.

###### 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 implementation for the given accessible object.

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

Queries 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.

###### gtk_accessible_update_platform_state

Informs ATs that the platform state has changed.

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

###### 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.TabOverview:child

The child widget.

since: 1.3

###### Adw.TabOverview:enable-new-tab

Whether to enable new tab button.

since: 1.3

###### Adw.TabOverview:enable-search

Whether to enable search in tabs.

since: 1.3

###### Adw.TabOverview:extra-drag-preferred-action

The current drag action during a drop.

since: 1.4

###### Adw.TabOverview:extra-drag-preload

Whether the drop data should be preloaded on hover.

since: 1.3

###### Adw.TabOverview:inverted

Whether thumbnails use inverted layout.

since: 1.3

###### Adw.TabOverview:open

Whether the overview is open.

since: 1.3

###### Adw.TabOverview:search-active

Whether search is currently active.

since: 1.3

###### Adw.TabOverview:secondary-menu

The secondary menu model.

since: 1.3

###### Adw.TabOverview:show-end-title-buttons

Whether to show end title buttons in the overview’s header bar.

since: 1.3

###### Adw.TabOverview:show-start-title-buttons

Whether to show start title buttons in the overview’s header bar.

since: 1.3

###### Adw.TabOverview:view

The tab view the overview controls.

since: 1.3

##### Properties inherited from GtkWidget (35)

###### 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 `GtkWidget::query-tooltip` signal on `widget`.

###### Gtk.Widget:height-request

Overrides 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:limit-events

Makes this widget act like a modal dialog, with respect to event delivery.

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

Overrides for width request of the widget.

##### Properties inherited from GtkAccessible (1)

###### Gtk.Accessible:accessible-role

The accessible role of the given `GtkAccessible` implementation.

#### Signals

###### Adw.TabOverview::create-tab

Emitted when a tab needs to be created.

since: 1.3

###### Adw.TabOverview::extra-drag-drop

Emitted when content is dropped onto a tab.

since: 1.3

###### Adw.TabOverview::extra-drag-value

Emitted when the dropped content is preloaded.

since: 1.3

##### 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 AdwTabOverviewClass {
      GtkWidgetClass parent_class;

    }

No description available.

###### Class members

`parent_class: GtkWidgetClass`

  No description available.