Interface

Gtk-4.0GtkTextViewSignalSignatures

interface SignalSignatures {
    backspace: () => void;
    "copy-clipboard": () => void;
    "cut-clipboard": () => void;
    "delete-from-cursor": (arg0: Gtk.DeleteType, arg1: number) => void;
    destroy: () => void;
    "direction-changed": (arg0: Gtk.TextDirection) => void;
    "extend-selection": (
        arg0: Gtk.TextExtendSelection,
        arg1: Gtk.TextIter,
        arg2: Gtk.TextIter,
        arg3: Gtk.TextIter,
    ) => boolean | void;
    hide: () => void;
    "insert-at-cursor": (arg0: string) => void;
    "insert-emoji": () => void;
    "keynav-failed": (arg0: Gtk.DirectionType) => boolean | void;
    map: () => void;
    "mnemonic-activate": (arg0: boolean) => boolean | void;
    "move-cursor": (
        arg0: Gtk.MovementStep,
        arg1: number,
        arg2: boolean,
    ) => void;
    "move-focus": (arg0: Gtk.DirectionType) => void;
    "move-viewport": (arg0: Gtk.ScrollStep, arg1: number) => void;
    notify: (arg0: GObject.ParamSpec) => void;
    "notify::accepts-tab": (pspec: GObject.ParamSpec) => void;
    "notify::accessible-role": (pspec: GObject.ParamSpec) => void;
    "notify::bottom-margin": (pspec: GObject.ParamSpec) => void;
    "notify::buffer": (pspec: GObject.ParamSpec) => void;
    "notify::can-focus": (pspec: GObject.ParamSpec) => void;
    "notify::can-target": (pspec: GObject.ParamSpec) => void;
    "notify::css-classes": (pspec: GObject.ParamSpec) => void;
    "notify::css-name": (pspec: GObject.ParamSpec) => void;
    "notify::cursor": (pspec: GObject.ParamSpec) => void;
    "notify::cursor-visible": (pspec: GObject.ParamSpec) => void;
    "notify::editable": (pspec: GObject.ParamSpec) => void;
    "notify::extra-menu": (pspec: GObject.ParamSpec) => void;
    "notify::focus-on-click": (pspec: GObject.ParamSpec) => void;
    "notify::focusable": (pspec: GObject.ParamSpec) => void;
    "notify::hadjustment": (pspec: GObject.ParamSpec) => void;
    "notify::halign": (pspec: GObject.ParamSpec) => void;
    "notify::has-default": (pspec: GObject.ParamSpec) => void;
    "notify::has-focus": (pspec: GObject.ParamSpec) => void;
    "notify::has-tooltip": (pspec: GObject.ParamSpec) => void;
    "notify::height-request": (pspec: GObject.ParamSpec) => void;
    "notify::hexpand": (pspec: GObject.ParamSpec) => void;
    "notify::hexpand-set": (pspec: GObject.ParamSpec) => void;
    "notify::hscroll-policy": (pspec: GObject.ParamSpec) => void;
    "notify::im-module": (pspec: GObject.ParamSpec) => void;
    "notify::indent": (pspec: GObject.ParamSpec) => void;
    "notify::input-hints": (pspec: GObject.ParamSpec) => void;
    "notify::input-purpose": (pspec: GObject.ParamSpec) => void;
    "notify::justification": (pspec: GObject.ParamSpec) => void;
    "notify::layout-manager": (pspec: GObject.ParamSpec) => void;
    "notify::left-margin": (pspec: GObject.ParamSpec) => void;
    "notify::limit-events": (pspec: GObject.ParamSpec) => void;
    "notify::margin-bottom": (pspec: GObject.ParamSpec) => void;
    "notify::margin-end": (pspec: GObject.ParamSpec) => void;
    "notify::margin-start": (pspec: GObject.ParamSpec) => void;
    "notify::margin-top": (pspec: GObject.ParamSpec) => void;
    "notify::monospace": (pspec: GObject.ParamSpec) => void;
    "notify::name": (pspec: GObject.ParamSpec) => void;
    "notify::opacity": (pspec: GObject.ParamSpec) => void;
    "notify::overflow": (pspec: GObject.ParamSpec) => void;
    "notify::overwrite": (pspec: GObject.ParamSpec) => void;
    "notify::parent": (pspec: GObject.ParamSpec) => void;
    "notify::pixels-above-lines": (pspec: GObject.ParamSpec) => void;
    "notify::pixels-below-lines": (pspec: GObject.ParamSpec) => void;
    "notify::pixels-inside-wrap": (pspec: GObject.ParamSpec) => void;
    "notify::receives-default": (pspec: GObject.ParamSpec) => void;
    "notify::right-margin": (pspec: GObject.ParamSpec) => void;
    "notify::root": (pspec: GObject.ParamSpec) => void;
    "notify::scale-factor": (pspec: GObject.ParamSpec) => void;
    "notify::sensitive": (pspec: GObject.ParamSpec) => void;
    "notify::tabs": (pspec: GObject.ParamSpec) => void;
    "notify::tooltip-markup": (pspec: GObject.ParamSpec) => void;
    "notify::tooltip-text": (pspec: GObject.ParamSpec) => void;
    "notify::top-margin": (pspec: GObject.ParamSpec) => void;
    "notify::vadjustment": (pspec: GObject.ParamSpec) => void;
    "notify::valign": (pspec: GObject.ParamSpec) => void;
    "notify::vexpand": (pspec: GObject.ParamSpec) => void;
    "notify::vexpand-set": (pspec: GObject.ParamSpec) => void;
    "notify::visible": (pspec: GObject.ParamSpec) => void;
    "notify::vscroll-policy": (pspec: GObject.ParamSpec) => void;
    "notify::width-request": (pspec: GObject.ParamSpec) => void;
    "notify::wrap-mode": (pspec: GObject.ParamSpec) => void;
    "paste-clipboard": () => void;
    "preedit-changed": (arg0: string) => void;
    "query-tooltip": (
        arg0: number,
        arg1: number,
        arg2: boolean,
        arg3: Gtk.Tooltip,
    ) => boolean | void;
    realize: () => void;
    "select-all": (arg0: boolean) => void;
    "set-anchor": () => void;
    show: () => void;
    "state-flags-changed": (arg0: Gtk.StateFlags) => void;
    "toggle-cursor-visible": () => void;
    "toggle-overwrite": () => void;
    unmap: () => void;
    unrealize: () => void;
}

Hierarchy (View Summary)

Index

Properties

Properties - Inherited from Gtk.Widget.SignalSignatures

Properties

backspace: () => void

Gets emitted when the user asks for it.

The ::backspace signal is a keybinding signal.

The default bindings for this signal are Backspace and Shift+Backspace.

"copy-clipboard": () => void

Gets emitted to copy the selection to the clipboard.

The ::copy-clipboard signal is a keybinding signal.

The default bindings for this signal are Ctrl+c and Ctrl+Insert.

"cut-clipboard": () => void

Gets emitted to cut the selection to the clipboard.

The ::cut-clipboard signal is a keybinding signal.

The default bindings for this signal are Ctrl+x and Shift+Delete.

"delete-from-cursor": (arg0: Gtk.DeleteType, arg1: number) => void

Gets emitted when the user initiates a text deletion.

The ::delete-from-cursor signal is a keybinding signal.

If the type is Gtk.DeleteType.CHARS, GTK deletes the selection if there is one, otherwise it deletes the requested number of characters.

The default bindings for this signal are Delete for deleting a character, Ctrl+Delete for deleting a word and Ctrl+Backspace for deleting a word backwards.

"extend-selection": (
    arg0: Gtk.TextExtendSelection,
    arg1: Gtk.TextIter,
    arg2: Gtk.TextIter,
    arg3: Gtk.TextIter,
) => boolean | void

Emitted when the selection needs to be extended at location.

"insert-at-cursor": (arg0: string) => void

Gets emitted when the user initiates the insertion of a fixed string at the cursor.

The ::insert-at-cursor signal is a keybinding signal.

This signal has no default bindings.

"insert-emoji": () => void

Gets emitted to present the Emoji chooser for the text_view.

The ::insert-emoji signal is a keybinding signal.

The default bindings for this signal are Ctrl+. and Ctrl+;

"move-cursor": (arg0: Gtk.MovementStep, arg1: number, arg2: boolean) => void

Gets emitted when the user initiates a cursor movement.

The ::move-cursor signal is a keybinding signal. If the cursor is not visible in text_view, this signal causes the viewport to be moved instead.

Applications should not connect to it, but may emit it with g_signal_emit_by_name() if they need to control the cursor programmatically.

The default bindings for this signal come in two variants, the variant with the Shift modifier extends the selection, the variant without it does not. There are too many key combinations to list them all here.

  • , , , move by individual characters/lines
  • Ctrl+, etc. move by words/paragraphs
  • Home and End move to the ends of the buffer
  • PgUp and PgDn move vertically by pages
  • Ctrl+PgUp and Ctrl+PgDn move horizontally by pages
"move-viewport": (arg0: Gtk.ScrollStep, arg1: number) => void

Gets emitted to move the viewport.

The ::move-viewport signal is a keybinding signal, which can be bound to key combinations to allow the user to move the viewport, i.e. change what part of the text view is visible in a containing scrolled window.

There are no default bindings for this signal.

"notify::accepts-tab": (pspec: GObject.ParamSpec) => void
"notify::accessible-role": (pspec: GObject.ParamSpec) => void
"notify::bottom-margin": (pspec: GObject.ParamSpec) => void
"notify::buffer": (pspec: GObject.ParamSpec) => void
"notify::can-focus": (pspec: GObject.ParamSpec) => void
"notify::can-target": (pspec: GObject.ParamSpec) => void
"notify::css-classes": (pspec: GObject.ParamSpec) => void
"notify::css-name": (pspec: GObject.ParamSpec) => void
"notify::cursor": (pspec: GObject.ParamSpec) => void
"notify::cursor-visible": (pspec: GObject.ParamSpec) => void
"notify::editable": (pspec: GObject.ParamSpec) => void
"notify::extra-menu": (pspec: GObject.ParamSpec) => void
"notify::focus-on-click": (pspec: GObject.ParamSpec) => void
"notify::focusable": (pspec: GObject.ParamSpec) => void
"notify::hadjustment": (pspec: GObject.ParamSpec) => void
"notify::halign": (pspec: GObject.ParamSpec) => void
"notify::has-default": (pspec: GObject.ParamSpec) => void
"notify::has-focus": (pspec: GObject.ParamSpec) => void
"notify::has-tooltip": (pspec: GObject.ParamSpec) => void
"notify::height-request": (pspec: GObject.ParamSpec) => void
"notify::hexpand": (pspec: GObject.ParamSpec) => void
"notify::hexpand-set": (pspec: GObject.ParamSpec) => void
"notify::hscroll-policy": (pspec: GObject.ParamSpec) => void
"notify::im-module": (pspec: GObject.ParamSpec) => void
"notify::indent": (pspec: GObject.ParamSpec) => void
"notify::input-hints": (pspec: GObject.ParamSpec) => void
"notify::input-purpose": (pspec: GObject.ParamSpec) => void
"notify::justification": (pspec: GObject.ParamSpec) => void
"notify::layout-manager": (pspec: GObject.ParamSpec) => void
"notify::left-margin": (pspec: GObject.ParamSpec) => void
"notify::limit-events": (pspec: GObject.ParamSpec) => void
"notify::margin-bottom": (pspec: GObject.ParamSpec) => void
"notify::margin-end": (pspec: GObject.ParamSpec) => void
"notify::margin-start": (pspec: GObject.ParamSpec) => void
"notify::margin-top": (pspec: GObject.ParamSpec) => void
"notify::monospace": (pspec: GObject.ParamSpec) => void
"notify::name": (pspec: GObject.ParamSpec) => void
"notify::opacity": (pspec: GObject.ParamSpec) => void
"notify::overflow": (pspec: GObject.ParamSpec) => void
"notify::overwrite": (pspec: GObject.ParamSpec) => void
"notify::parent": (pspec: GObject.ParamSpec) => void
"notify::pixels-above-lines": (pspec: GObject.ParamSpec) => void
"notify::pixels-below-lines": (pspec: GObject.ParamSpec) => void
"notify::pixels-inside-wrap": (pspec: GObject.ParamSpec) => void
"notify::receives-default": (pspec: GObject.ParamSpec) => void
"notify::right-margin": (pspec: GObject.ParamSpec) => void
"notify::root": (pspec: GObject.ParamSpec) => void
"notify::scale-factor": (pspec: GObject.ParamSpec) => void
"notify::sensitive": (pspec: GObject.ParamSpec) => void
"notify::tabs": (pspec: GObject.ParamSpec) => void
"notify::tooltip-markup": (pspec: GObject.ParamSpec) => void
"notify::tooltip-text": (pspec: GObject.ParamSpec) => void
"notify::top-margin": (pspec: GObject.ParamSpec) => void
"notify::vadjustment": (pspec: GObject.ParamSpec) => void
"notify::valign": (pspec: GObject.ParamSpec) => void
"notify::vexpand": (pspec: GObject.ParamSpec) => void
"notify::vexpand-set": (pspec: GObject.ParamSpec) => void
"notify::visible": (pspec: GObject.ParamSpec) => void
"notify::vscroll-policy": (pspec: GObject.ParamSpec) => void
"notify::width-request": (pspec: GObject.ParamSpec) => void
"notify::wrap-mode": (pspec: GObject.ParamSpec) => void
"paste-clipboard": () => void

Gets emitted to paste the contents of the clipboard into the text view.

The ::paste-clipboard signal is a keybinding signal.

The default bindings for this signal are Ctrl+v and Shift+Insert.

"preedit-changed": (arg0: string) => void

Emitted when preedit text of the active IM changes.

If an input method is used, the typed text will not immediately be committed to the buffer. So if you are interested in the text, connect to this signal.

This signal is only emitted if the text at the given position is actually editable.

"select-all": (arg0: boolean) => void

Gets emitted to select or unselect the complete contents of the text view.

The ::select-all signal is a keybinding signal.

The default bindings for this signal are Ctrl+a and Ctrl+/ for selecting and Shift+Ctrl+a and Ctrl+</kbd> for unselecting.

"set-anchor": () => void

Gets emitted when the user initiates settings the "anchor" mark.

The ::set-anchor signal is a keybinding signal which gets emitted when the user initiates setting the "anchor" mark. The "anchor" mark gets placed at the same position as the "insert" mark.

This signal has no default bindings.

"toggle-cursor-visible": () => void

Gets emitted to toggle the cursor-visible property.

The ::toggle-cursor-visible signal is a keybinding signal.

The default binding for this signal is F7.

"toggle-overwrite": () => void

Gets emitted to toggle the overwrite mode of the text view.

The ::toggle-overwrite signal is a keybinding signal.

The default binding for this signal is Insert.

Properties - Inherited from Gtk.Widget.SignalSignatures

destroy: () => void

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

May result in finalization of the widget if all references are released.

This signal is not suitable for saving widget state.

"direction-changed": (arg0: Gtk.TextDirection) => void

Emitted when the text direction of a widget changes.

hide: () => void

Emitted when widget is hidden.

"keynav-failed": (arg0: Gtk.DirectionType) => boolean | void

Emitted if keyboard navigation fails.

See Gtk.Widget.keynav_failed for details.

map: () => void

Emitted when widget is going to be mapped.

A widget is mapped when the widget is visible (which is controlled with Gtk.Widget.visible) and all its parents up to the toplevel widget are also visible.

The ::map signal can be used to determine whether a widget will be drawn, for instance it can resume an animation that was stopped during the emission of Gtk.Widget::unmap.

"mnemonic-activate": (arg0: boolean) => boolean | void

Emitted when a widget is activated via a mnemonic.

The default handler for this signal activates widget if group_cycling is false, or just makes widget grab focus if group_cycling is true.

"move-focus": (arg0: Gtk.DirectionType) => void

Emitted when the focus is moved.

The ::move-focus signal is a keybinding signal.

The default bindings for this signal are Tab to move forward, and Shift+Tab to move backward.

notify: (arg0: GObject.ParamSpec) => void

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.

Note that getting this signal doesn’t itself guarantee that the value of the property has actually changed. When it is emitted is determined by the derived GObject class. If the implementor did not create the property with GObject.ParamFlags.EXPLICIT_NOTIFY, then any call to g_object_set_property() results in ::notify being emitted, even if the new value is the same as the old. If they did pass GObject.ParamFlags.EXPLICIT_NOTIFY, then this signal is emitted only when they explicitly call g_object_notify() or g_object_notify_by_pspec(), and common practice is to do that only when the value has actually changed.

This signal is typically used to obtain change notification for a single property, by specifying the property name as a detail in the g_signal_connect() call, like this:

g_signal_connect (text_view->buffer, "notify::paste-target-list",
G_CALLBACK (gtk_text_view_target_list_notify),
text_view)

It is important to note that you must use [canonical parameter names][class@GObject.ParamSpec#parameter-names] as detail strings for the notify signal.

"query-tooltip": (
    arg0: number,
    arg1: number,
    arg2: boolean,
    arg3: Gtk.Tooltip,
) => boolean | void

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

This happens when the Gtk.Widget.has_tooltip property is true and the hover timeout has expired with the cursor hovering above widget; or emitted when widget got focus in keyboard mode.

Using the given coordinates, the signal handler should determine whether a tooltip should be shown for widget. If this is the case true should be returned, false otherwise. Note that if keyboard_mode is true, the values of x and y are undefined and should not be used.

The signal handler is free to manipulate tooltip with the therefore destined function calls.

realize: () => void

Emitted when widget is associated with a Gdk.Surface.

This means that Gtk.Widget.realize has been called or the widget has been mapped (that is, it is going to be drawn).

show: () => void

Emitted when widget is shown.

"state-flags-changed": (arg0: Gtk.StateFlags) => void

Emitted when the widget state changes.

See Gtk.Widget.get_state_flags.

unmap: () => void

Emitted when widget is going to be unmapped.

A widget is unmapped when either it or any of its parents up to the toplevel widget have been set as hidden.

As ::unmap indicates that a widget will not be shown any longer, it can be used to, for example, stop an animation on the widget.

unrealize: () => void

Emitted when the Gdk.Surface associated with widget is destroyed.

This means that Gtk.Widget.unrealize has been called or the widget has been unmapped (that is, it is going to be hidden).