Interface

Gtk-4.0GtkTextSignalSignatures

interface SignalSignatures {
    activate: () => void;
    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;
    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;
    notify: (arg0: GObject.ParamSpec) => void;
    "notify::accessible-role": (pspec: GObject.ParamSpec) => void;
    "notify::activates-default": (pspec: GObject.ParamSpec) => void;
    "notify::attributes": (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-position": (pspec: GObject.ParamSpec) => void;
    "notify::editable": (pspec: GObject.ParamSpec) => void;
    "notify::enable-emoji-completion": (pspec: GObject.ParamSpec) => void;
    "notify::enable-undo": (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::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::im-module": (pspec: GObject.ParamSpec) => void;
    "notify::input-hints": (pspec: GObject.ParamSpec) => void;
    "notify::input-purpose": (pspec: GObject.ParamSpec) => void;
    "notify::invisible-char": (pspec: GObject.ParamSpec) => void;
    "notify::invisible-char-set": (pspec: GObject.ParamSpec) => void;
    "notify::layout-manager": (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::max-length": (pspec: GObject.ParamSpec) => void;
    "notify::max-width-chars": (pspec: GObject.ParamSpec) => void;
    "notify::name": (pspec: GObject.ParamSpec) => void;
    "notify::opacity": (pspec: GObject.ParamSpec) => void;
    "notify::overflow": (pspec: GObject.ParamSpec) => void;
    "notify::overwrite-mode": (pspec: GObject.ParamSpec) => void;
    "notify::parent": (pspec: GObject.ParamSpec) => void;
    "notify::placeholder-text": (pspec: GObject.ParamSpec) => void;
    "notify::propagate-text-width": (pspec: GObject.ParamSpec) => void;
    "notify::receives-default": (pspec: GObject.ParamSpec) => void;
    "notify::root": (pspec: GObject.ParamSpec) => void;
    "notify::scale-factor": (pspec: GObject.ParamSpec) => void;
    "notify::scroll-offset": (pspec: GObject.ParamSpec) => void;
    "notify::selection-bound": (pspec: GObject.ParamSpec) => void;
    "notify::sensitive": (pspec: GObject.ParamSpec) => void;
    "notify::tabs": (pspec: GObject.ParamSpec) => void;
    "notify::text": (pspec: GObject.ParamSpec) => void;
    "notify::tooltip-markup": (pspec: GObject.ParamSpec) => void;
    "notify::tooltip-text": (pspec: GObject.ParamSpec) => void;
    "notify::truncate-multiline": (pspec: GObject.ParamSpec) => void;
    "notify::valign": (pspec: GObject.ParamSpec) => void;
    "notify::vexpand": (pspec: GObject.ParamSpec) => void;
    "notify::vexpand-set": (pspec: GObject.ParamSpec) => void;
    "notify::visibility": (pspec: GObject.ParamSpec) => void;
    "notify::visible": (pspec: GObject.ParamSpec) => void;
    "notify::width-chars": (pspec: GObject.ParamSpec) => void;
    "notify::width-request": (pspec: GObject.ParamSpec) => void;
    "notify::xalign": (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;
    show: () => void;
    "state-flags-changed": (arg0: Gtk.StateFlags) => void;
    "toggle-overwrite": () => void;
    unmap: () => void;
    unrealize: () => void;
}

Hierarchy (View Summary)

Index

Properties

Properties - Inherited from Gtk.Widget.SignalSignatures

Properties

activate: () => void

Emitted when the user hits the Enter key.

The default bindings for this signal are all forms of the Enter key.

backspace: () => void

Emitted when the user asks for it.

This is a keybinding signal.

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

"copy-clipboard": () => void

Emitted to copy the selection to the clipboard.

This is a keybinding signal.

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

"cut-clipboard": () => void

Emitted to cut the selection to the clipboard.

This 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

Emitted when the user initiates a text deletion.

This 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 and Ctrl+Delete for deleting a word.

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

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

This is a keybinding signal.

This signal has no default bindings.

"insert-emoji": () => void

Emitted to present the Emoji chooser.

This is a keybinding signal.

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

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

Emitted when the user initiates a cursor movement.

If the cursor is not visible in self, this signal causes the viewport to be moved instead.

This is a keybinding signal.

Applications should not connect to it, but may emit it with GObject.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
"notify::accessible-role": (pspec: GObject.ParamSpec) => void
"notify::activates-default": (pspec: GObject.ParamSpec) => void
"notify::attributes": (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-position": (pspec: GObject.ParamSpec) => void
"notify::editable": (pspec: GObject.ParamSpec) => void
"notify::enable-emoji-completion": (pspec: GObject.ParamSpec) => void
"notify::enable-undo": (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::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::im-module": (pspec: GObject.ParamSpec) => void
"notify::input-hints": (pspec: GObject.ParamSpec) => void
"notify::input-purpose": (pspec: GObject.ParamSpec) => void
"notify::invisible-char": (pspec: GObject.ParamSpec) => void
"notify::invisible-char-set": (pspec: GObject.ParamSpec) => void
"notify::layout-manager": (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::max-length": (pspec: GObject.ParamSpec) => void
"notify::max-width-chars": (pspec: GObject.ParamSpec) => void
"notify::name": (pspec: GObject.ParamSpec) => void
"notify::opacity": (pspec: GObject.ParamSpec) => void
"notify::overflow": (pspec: GObject.ParamSpec) => void
"notify::overwrite-mode": (pspec: GObject.ParamSpec) => void
"notify::parent": (pspec: GObject.ParamSpec) => void
"notify::placeholder-text": (pspec: GObject.ParamSpec) => void
"notify::propagate-text-width": (pspec: GObject.ParamSpec) => void
"notify::receives-default": (pspec: GObject.ParamSpec) => void
"notify::root": (pspec: GObject.ParamSpec) => void
"notify::scale-factor": (pspec: GObject.ParamSpec) => void
"notify::scroll-offset": (pspec: GObject.ParamSpec) => void
"notify::selection-bound": (pspec: GObject.ParamSpec) => void
"notify::sensitive": (pspec: GObject.ParamSpec) => void
"notify::tabs": (pspec: GObject.ParamSpec) => void
"notify::text": (pspec: GObject.ParamSpec) => void
"notify::tooltip-markup": (pspec: GObject.ParamSpec) => void
"notify::tooltip-text": (pspec: GObject.ParamSpec) => void
"notify::truncate-multiline": (pspec: GObject.ParamSpec) => void
"notify::valign": (pspec: GObject.ParamSpec) => void
"notify::vexpand": (pspec: GObject.ParamSpec) => void
"notify::vexpand-set": (pspec: GObject.ParamSpec) => void
"notify::visibility": (pspec: GObject.ParamSpec) => void
"notify::visible": (pspec: GObject.ParamSpec) => void
"notify::width-chars": (pspec: GObject.ParamSpec) => void
"notify::width-request": (pspec: GObject.ParamSpec) => void
"notify::xalign": (pspec: GObject.ParamSpec) => void
"paste-clipboard": () => void

Emitted to paste the contents of the clipboard.

This is a keybinding signal.

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

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

Emitted when the preedit text 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.

"toggle-overwrite": () => void

Emitted to toggle the overwrite mode.

This is a keybinding signal.

The default bindings 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).