Class

GtkSearchEntry

Description [src]

final class Gtk.SearchEntry : Gtk.Widget {
  /* No available fields */
}

GtkSearchEntry is an entry widget that has been tailored for use as a search entry.

The main API for interacting with a GtkSearchEntry as entry is the GtkEditable interface.

An example GtkSearchEntry

It will show an inactive symbolic “find” icon when the search entry is empty, and a symbolic “clear” icon when there is text. Clicking on the “clear” icon will empty the search entry.

To make filtering appear more reactive, it is a good idea to not react to every change in the entry text immediately, but only after a short delay. To support this, GtkSearchEntry emits the GtkSearchEntry::search-changed signal which can be used instead of the GtkEditable::changed signal.

The GtkSearchEntry::previous-match, GtkSearchEntry::next-match and GtkSearchEntry::stop-search signals can be used to implement moving between search results and ending the search.

Often, GtkSearchEntry will be fed events by means of being placed inside a GtkSearchBar. If that is not the case, you can use gtk_search_entry_set_key_capture_widget() to let it capture key input from another widget.

GtkSearchEntry provides only minimal API and should be used with the GtkEditable API.

CSS Nodes

entry.search
╰── text

GtkSearchEntry has a single CSS node with name entry that carries a .search style class, and the text node is a child of that.

Accessibility

GtkSearchEntry uses the GTK_ACCESSIBLE_ROLE_SEARCH_BOX role.

Hierarchy

hierarchy this GtkSearchEntry implements_0 GtkAccessible this--implements_0 implements_1 GtkBuildable this--implements_1 implements_2 GtkConstraintTarget this--implements_2 implements_3 GtkEditable this--implements_3 ancestor_0 GtkWidget ancestor_0--this ancestor_1 GInitiallyUnowned ancestor_1--ancestor_0 ancestor_2 GObject ancestor_2--ancestor_1

Constructors

gtk_search_entry_new

Creates a GtkSearchEntry.

Instance methods

gtk_search_entry_get_key_capture_widget

Gets the widget that entry is capturing key events from.

gtk_search_entry_set_key_capture_widget

Sets widget as the widget that entry will capture key events from.

Methods inherited from GtkWidget (159)
gtk_widget_action_set_enabled

Enable or disable an action installed with gtk_widget_class_install_action().

gtk_widget_activate

For widgets that can be “activated” (buttons, menu items, etc.), this function activates them.

gtk_widget_activate_action

Looks up the action in the action groups associated with widget and its ancestors, and activates it.

gtk_widget_activate_action_variant

Looks up the action in the action groups associated with widget and its ancestors, and activates it.

gtk_widget_activate_default

Activates the default.activate action from widget.

gtk_widget_add_controller

Adds controller to widget so that it will receive events.

gtk_widget_add_css_class

Adds a style class to widget.

gtk_widget_add_mnemonic_label

Adds a widget to the list of mnemonic labels for this widget.

gtk_widget_add_tick_callback

Queues an animation frame update and adds a callback to be called before each frame.

gtk_widget_allocate

This function is only used by GtkWidget subclasses, to assign a size, position and (optionally) baseline to their child widgets.

gtk_widget_child_focus

Called by widgets as the user moves around the window using keyboard shortcuts.

gtk_widget_compute_bounds

Computes the bounds for widget in the coordinate space of target.

gtk_widget_compute_expand

Computes whether a container should give this widget extra space when possible.

gtk_widget_compute_point

Translates the given point in widgets coordinates to coordinates relative to target’s coordinate system.

gtk_widget_compute_transform

Computes a matrix suitable to describe a transformation from widgets coordinate system into targets coordinate system.

gtk_widget_contains

Tests if the point at (x, y) is contained in widget.

gtk_widget_create_pango_context

Creates a new PangoContext with the appropriate font map, font options, font description, and base direction for drawing text for this widget.

gtk_widget_create_pango_layout

Creates a new PangoLayout with the appropriate font map, font description, and base direction for drawing text for this widget.

gtk_drag_check_threshold

Checks to see if a drag movement has passed the GTK drag threshold.

gtk_widget_error_bell

Notifies the user about an input-related error on this widget.

gtk_widget_get_allocated_baseline

Returns the baseline that has currently been allocated to widget.

gtk_widget_get_allocated_height

Returns the height that has currently been allocated to widget.

gtk_widget_get_allocated_width

Returns the width that has currently been allocated to widget.

Methods inherited from GObject (42)
Methods inherited from GtkAccessible (10)
gtk_accessible_get_accessible_role

Retrieves the GtkAccessibleRole for the given GtkAccessible.

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

Methods inherited from GtkEditable (23)
gtk_editable_delete_selection

Deletes the currently selected text of the editable.

gtk_editable_delete_text

Deletes a sequence of characters.

gtk_editable_finish_delegate

Undoes the setup done by gtk_editable_init_delegate().

gtk_editable_get_alignment

Gets the alignment of the editable.

gtk_editable_get_chars

Retrieves a sequence of characters.

gtk_editable_get_delegate

Gets the GtkEditable that editable is delegating its implementation to.

gtk_editable_get_editable

Retrieves whether editable is editable.

gtk_editable_get_enable_undo

Gets if undo/redo actions are enabled for editable.

gtk_editable_get_max_width_chars

Retrieves the desired maximum width of editable, in characters.

gtk_editable_get_position

Retrieves the current position of the cursor relative to the start of the content of the editable.

gtk_editable_get_selection_bounds

Retrieves the selection bound of the editable.

gtk_editable_get_text

Retrieves the contents of editable.

gtk_editable_get_width_chars

Gets the number of characters of space reserved for the contents of the editable.

gtk_editable_init_delegate

Sets up a delegate for GtkEditable.

gtk_editable_insert_text

Inserts length bytes of text into the contents of the widget, at position position.

gtk_editable_select_region

Selects a region of text.

gtk_editable_set_alignment

Sets the alignment for the contents of the editable.

gtk_editable_set_editable

Determines if the user can edit the text in the editable widget.

gtk_editable_set_enable_undo

If enabled, changes to editable will be saved for undo/redo actions.

gtk_editable_set_max_width_chars

Sets the desired maximum width in characters of editable.

gtk_editable_set_position

Sets the cursor position in the editable to the given value.

gtk_editable_set_text

Sets the text in the editable to the given value.

gtk_editable_set_width_chars

Changes the size request of the editable to be about the right size for n_chars characters.

Properties

Gtk.SearchEntry:activates-default

Whether to activate the default widget when Enter is pressed.

Gtk.SearchEntry:placeholder-text

The text that will be displayed in the GtkSearchEntry when it is empty and unfocused.

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.

Properties inherited from GtkEditable (8)
Gtk.Editable:cursor-position

The current position of the insertion cursor in chars.

Gtk.Editable:editable

Whether the entry contents can be edited.

Gtk.Editable:enable-undo

If undo/redo should be enabled for the editable.

Gtk.Editable:max-width-chars

The desired maximum width of the entry, in characters.

Gtk.Editable:selection-bound

The position of the opposite end of the selection from the cursor in chars.

Gtk.Editable:text

The contents of the entry.

Gtk.Editable:width-chars

Number of characters to leave space for in the entry.

Gtk.Editable:xalign

The horizontal alignment, from 0 (left) to 1 (right).

Signals

Gtk.SearchEntry::activate

Emitted when the entry is activated.

Gtk.SearchEntry::next-match

Emitted when the user initiates a move to the next match for the current search string.

Gtk.SearchEntry::previous-match

Emitted when the user initiates a move to the previous match for the current search string.

Gtk.SearchEntry::search-changed

Emitted with a short delay of 150 milliseconds after the last change to the entry text.

Gtk.SearchEntry::search-started

Emitted when the user initiated a search on the entry.

Gtk.SearchEntry::stop-search

Emitted when the user stops a search via keyboard input.

Signals inherited from GtkWidget (13)
Gtk.Widget::destroy

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

Gtk.Widget::direction-changed

Emitted when the text direction of a widget changes.

Gtk.Widget::hide

Emitted when widget is hidden.

Gtk.Widget::keynav-failed

Emitted if keyboard navigation fails.

Gtk.Widget::map

Emitted when widget is going to be mapped.

Gtk.Widget::mnemonic-activate

Emitted when a widget is activated via a mnemonic.

Gtk.Widget::move-focus

Emitted when the focus is moved.

Gtk.Widget::query-tooltip

Emitted when the widgets tooltip is about to be shown.

Gtk.Widget::realize

Emitted when widget is associated with a GdkSurface.

Gtk.Widget::show

Emitted when widget is shown.

Gtk.Widget::state-flags-changed

Emitted when the widget state changes.

Gtk.Widget::unmap

Emitted when widget is going to be unmapped.

Gtk.Widget::unrealize

Emitted when the GdkSurface associated with widget is destroyed.

Signals inherited from GObject (1)
Signals inherited from GtkEditable (3)
Gtk.Editable::changed

Emitted at the end of a single user-visible operation on the contents.

Gtk.Editable::delete-text

Emitted when text is deleted from the widget by the user.

Gtk.Editable::insert-text

Emitted when text is inserted into the widget by the user.