Interface

Gtk-3.0GtkPlacesSidebarSignalSignatures

interface SignalSignatures {
    "accel-closures-changed": () => void;
    add: (arg0: Gtk.Widget) => void;
    "button-press-event": (arg0: EventButton) => boolean | void;
    "button-release-event": (arg0: EventButton) => boolean | void;
    "can-activate-accel": (arg0: number) => boolean | void;
    "check-resize": () => void;
    "child-notify": (arg0: GObject.ParamSpec) => void;
    "child-notify::app-paintable": (arg0: GObject.ParamSpec) => void;
    "child-notify::can-default": (arg0: GObject.ParamSpec) => void;
    "child-notify::can-focus": (arg0: GObject.ParamSpec) => void;
    "child-notify::composite-child": (arg0: GObject.ParamSpec) => void;
    "child-notify::double-buffered": (arg0: GObject.ParamSpec) => void;
    "child-notify::events": (arg0: GObject.ParamSpec) => void;
    "child-notify::expand": (arg0: GObject.ParamSpec) => void;
    "child-notify::focus-on-click": (arg0: GObject.ParamSpec) => void;
    "child-notify::halign": (arg0: GObject.ParamSpec) => void;
    "child-notify::has-default": (arg0: GObject.ParamSpec) => void;
    "child-notify::has-focus": (arg0: GObject.ParamSpec) => void;
    "child-notify::has-tooltip": (arg0: GObject.ParamSpec) => void;
    "child-notify::height-request": (arg0: GObject.ParamSpec) => void;
    "child-notify::hexpand": (arg0: GObject.ParamSpec) => void;
    "child-notify::hexpand-set": (arg0: GObject.ParamSpec) => void;
    "child-notify::is-focus": (arg0: GObject.ParamSpec) => void;
    "child-notify::margin": (arg0: GObject.ParamSpec) => void;
    "child-notify::margin-bottom": (arg0: GObject.ParamSpec) => void;
    "child-notify::margin-end": (arg0: GObject.ParamSpec) => void;
    "child-notify::margin-left": (arg0: GObject.ParamSpec) => void;
    "child-notify::margin-right": (arg0: GObject.ParamSpec) => void;
    "child-notify::margin-start": (arg0: GObject.ParamSpec) => void;
    "child-notify::margin-top": (arg0: GObject.ParamSpec) => void;
    "child-notify::name": (arg0: GObject.ParamSpec) => void;
    "child-notify::no-show-all": (arg0: GObject.ParamSpec) => void;
    "child-notify::opacity": (arg0: GObject.ParamSpec) => void;
    "child-notify::parent": (arg0: GObject.ParamSpec) => void;
    "child-notify::receives-default": (arg0: GObject.ParamSpec) => void;
    "child-notify::scale-factor": (arg0: GObject.ParamSpec) => void;
    "child-notify::sensitive": (arg0: GObject.ParamSpec) => void;
    "child-notify::style": (arg0: GObject.ParamSpec) => void;
    "child-notify::tooltip-markup": (arg0: GObject.ParamSpec) => void;
    "child-notify::tooltip-text": (arg0: GObject.ParamSpec) => void;
    "child-notify::valign": (arg0: GObject.ParamSpec) => void;
    "child-notify::vexpand": (arg0: GObject.ParamSpec) => void;
    "child-notify::vexpand-set": (arg0: GObject.ParamSpec) => void;
    "child-notify::visible": (arg0: GObject.ParamSpec) => void;
    "child-notify::width-request": (arg0: GObject.ParamSpec) => void;
    "child-notify::window": (arg0: GObject.ParamSpec) => void;
    "composited-changed": () => void;
    "configure-event": (arg0: EventConfigure) => boolean | void;
    "damage-event": (arg0: EventExpose) => boolean | void;
    "delete-event": (arg0: Gdk.Event) => boolean | void;
    destroy: () => void;
    "destroy-event": (arg0: Gdk.Event) => boolean | void;
    "direction-changed": (arg0: Gtk.TextDirection) => void;
    "drag-action-ask": (arg0: number) => number;
    "drag-action-requested": (
        arg0: Gdk.DragContext,
        arg1: Gio.File,
        arg2: Gio.File[],
    ) => number;
    "drag-begin": (arg0: Gdk.DragContext) => void;
    "drag-data-delete": (arg0: Gdk.DragContext) => void;
    "drag-data-get": (
        arg0: Gdk.DragContext,
        arg1: SelectionData,
        arg2: number,
        arg3: number,
    ) => void;
    "drag-data-received": (
        arg0: Gdk.DragContext,
        arg1: number,
        arg2: number,
        arg3: SelectionData,
        arg4: number,
        arg5: number,
    ) => void;
    "drag-drop": (
        arg0: Gdk.DragContext,
        arg1: number,
        arg2: number,
        arg3: number,
    ) => boolean | void;
    "drag-end": (arg0: Gdk.DragContext) => void;
    "drag-failed": (
        arg0: Gdk.DragContext,
        arg1: Gtk.DragResult,
    ) => boolean | void;
    "drag-leave": (arg0: Gdk.DragContext, arg1: number) => void;
    "drag-motion": (
        arg0: Gdk.DragContext,
        arg1: number,
        arg2: number,
        arg3: number,
    ) => boolean | void;
    "drag-perform-drop": (
        arg0: Gio.File,
        arg1: Gio.File[],
        arg2: number,
    ) => void;
    draw: (arg0: default.Context) => boolean | void;
    "edge-overshot": (arg0: Gtk.PositionType) => void;
    "edge-reached": (arg0: Gtk.PositionType) => void;
    "enter-notify-event": (arg0: EventCrossing) => boolean | void;
    event: (arg0: Gdk.Event) => boolean | void;
    "event-after": (arg0: Gdk.Event) => void;
    focus: (arg0: Gtk.DirectionType) => boolean | void;
    "focus-in-event": (arg0: EventFocus) => boolean | void;
    "focus-out-event": (arg0: EventFocus) => boolean | void;
    "grab-broken-event": (arg0: EventGrabBroken) => boolean | void;
    "grab-focus": () => void;
    "grab-notify": (arg0: boolean) => void;
    hide: () => void;
    "hierarchy-changed": (arg0: Gtk.Widget) => void;
    "key-press-event": (arg0: EventKey) => boolean | void;
    "key-release-event": (arg0: EventKey) => boolean | void;
    "keynav-failed": (arg0: Gtk.DirectionType) => boolean | void;
    "leave-notify-event": (arg0: EventCrossing) => boolean | void;
    map: () => void;
    "map-event": (arg0: EventAny) => boolean | void;
    "mnemonic-activate": (arg0: boolean) => boolean | void;
    "motion-notify-event": (arg0: EventMotion) => boolean | void;
    mount: (arg0: Gio.MountOperation) => void;
    "move-focus": (arg0: Gtk.DirectionType) => void;
    "move-focus-out": (arg0: Gtk.DirectionType) => void;
    notify: (arg0: GObject.ParamSpec) => void;
    "notify::app-paintable": (pspec: GObject.ParamSpec) => void;
    "notify::border-width": (pspec: GObject.ParamSpec) => void;
    "notify::can-default": (pspec: GObject.ParamSpec) => void;
    "notify::can-focus": (pspec: GObject.ParamSpec) => void;
    "notify::child": (pspec: GObject.ParamSpec) => void;
    "notify::composite-child": (pspec: GObject.ParamSpec) => void;
    "notify::double-buffered": (pspec: GObject.ParamSpec) => void;
    "notify::events": (pspec: GObject.ParamSpec) => void;
    "notify::expand": (pspec: GObject.ParamSpec) => void;
    "notify::focus-on-click": (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::hscrollbar-policy": (pspec: GObject.ParamSpec) => void;
    "notify::is-focus": (pspec: GObject.ParamSpec) => void;
    "notify::kinetic-scrolling": (pspec: GObject.ParamSpec) => void;
    "notify::local-only": (pspec: GObject.ParamSpec) => void;
    "notify::location": (pspec: GObject.ParamSpec) => void;
    "notify::margin": (pspec: GObject.ParamSpec) => void;
    "notify::margin-bottom": (pspec: GObject.ParamSpec) => void;
    "notify::margin-end": (pspec: GObject.ParamSpec) => void;
    "notify::margin-left": (pspec: GObject.ParamSpec) => void;
    "notify::margin-right": (pspec: GObject.ParamSpec) => void;
    "notify::margin-start": (pspec: GObject.ParamSpec) => void;
    "notify::margin-top": (pspec: GObject.ParamSpec) => void;
    "notify::max-content-height": (pspec: GObject.ParamSpec) => void;
    "notify::max-content-width": (pspec: GObject.ParamSpec) => void;
    "notify::min-content-height": (pspec: GObject.ParamSpec) => void;
    "notify::min-content-width": (pspec: GObject.ParamSpec) => void;
    "notify::name": (pspec: GObject.ParamSpec) => void;
    "notify::no-show-all": (pspec: GObject.ParamSpec) => void;
    "notify::opacity": (pspec: GObject.ParamSpec) => void;
    "notify::open-flags": (pspec: GObject.ParamSpec) => void;
    "notify::overlay-scrolling": (pspec: GObject.ParamSpec) => void;
    "notify::parent": (pspec: GObject.ParamSpec) => void;
    "notify::populate-all": (pspec: GObject.ParamSpec) => void;
    "notify::propagate-natural-height": (pspec: GObject.ParamSpec) => void;
    "notify::propagate-natural-width": (pspec: GObject.ParamSpec) => void;
    "notify::receives-default": (pspec: GObject.ParamSpec) => void;
    "notify::resize-mode": (pspec: GObject.ParamSpec) => void;
    "notify::scale-factor": (pspec: GObject.ParamSpec) => void;
    "notify::sensitive": (pspec: GObject.ParamSpec) => void;
    "notify::shadow-type": (pspec: GObject.ParamSpec) => void;
    "notify::show-connect-to-server": (pspec: GObject.ParamSpec) => void;
    "notify::show-desktop": (pspec: GObject.ParamSpec) => void;
    "notify::show-enter-location": (pspec: GObject.ParamSpec) => void;
    "notify::show-other-locations": (pspec: GObject.ParamSpec) => void;
    "notify::show-recent": (pspec: GObject.ParamSpec) => void;
    "notify::show-starred-location": (pspec: GObject.ParamSpec) => void;
    "notify::show-trash": (pspec: GObject.ParamSpec) => void;
    "notify::style": (pspec: GObject.ParamSpec) => void;
    "notify::tooltip-markup": (pspec: GObject.ParamSpec) => void;
    "notify::tooltip-text": (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::vscrollbar-policy": (pspec: GObject.ParamSpec) => void;
    "notify::width-request": (pspec: GObject.ParamSpec) => void;
    "notify::window": (pspec: GObject.ParamSpec) => void;
    "notify::window-placement": (pspec: GObject.ParamSpec) => void;
    "notify::window-placement-set": (pspec: GObject.ParamSpec) => void;
    "open-location": (arg0: Gio.File, arg1: Gtk.PlacesOpenFlags) => void;
    "parent-set": (arg0: Gtk.Widget) => void;
    "populate-popup": (
        arg0: Gtk.Widget,
        arg1: Gio.File,
        arg2: Gio.Volume,
    ) => void;
    "popup-menu": () => boolean | void;
    "property-notify-event": (arg0: EventProperty) => boolean | void;
    "proximity-in-event": (arg0: EventProximity) => boolean | void;
    "proximity-out-event": (arg0: EventProximity) => boolean | void;
    "query-tooltip": (
        arg0: number,
        arg1: number,
        arg2: boolean,
        arg3: Gtk.Tooltip,
    ) => boolean | void;
    realize: () => void;
    remove: (arg0: Gtk.Widget) => void;
    "screen-changed": (arg0: Gdk.Screen) => void;
    "scroll-child": (arg0: Gtk.ScrollType, arg1: boolean) => boolean | void;
    "scroll-event": (arg0: EventScroll) => boolean | void;
    "selection-clear-event": (arg0: EventSelection) => boolean | void;
    "selection-get": (arg0: SelectionData, arg1: number, arg2: number) => void;
    "selection-notify-event": (arg0: EventSelection) => boolean | void;
    "selection-received": (arg0: SelectionData, arg1: number) => void;
    "selection-request-event": (arg0: EventSelection) => boolean | void;
    "set-focus-child": (arg0: Gtk.Widget) => void;
    show: () => void;
    "show-connect-to-server": () => void;
    "show-enter-location": () => void;
    "show-error-message": (arg0: string, arg1: string) => void;
    "show-help": (arg0: Gtk.WidgetHelpType) => boolean | void;
    "show-other-locations": () => void;
    "show-other-locations-with-flags": (arg0: Gtk.PlacesOpenFlags) => void;
    "show-starred-location": (arg0: Gtk.PlacesOpenFlags) => void;
    "size-allocate": (arg0: Gdk.Rectangle) => void;
    "state-changed": (arg0: Gtk.StateType) => void;
    "state-flags-changed": (arg0: Gtk.StateFlags) => void;
    "style-set": (arg0: Gtk.Style) => void;
    "style-updated": () => void;
    "touch-event": (arg0: Gdk.Event) => boolean | void;
    unmap: () => void;
    "unmap-event": (arg0: EventAny) => boolean | void;
    unmount: (arg0: Gio.MountOperation) => void;
    unrealize: () => void;
    "visibility-notify-event": (arg0: EventVisibility) => boolean | void;
    "window-state-event": (arg0: EventWindowState) => boolean | void;
}

Hierarchy (View Summary)

Index

Properties

drag-action-ask drag-action-requested drag-perform-drop mount notify::app-paintable notify::border-width notify::can-default notify::can-focus notify::child notify::composite-child notify::double-buffered notify::events notify::expand notify::focus-on-click notify::hadjustment notify::halign notify::has-default notify::has-focus notify::has-tooltip notify::height-request notify::hexpand notify::hexpand-set notify::hscrollbar-policy notify::is-focus notify::kinetic-scrolling notify::local-only notify::location notify::margin notify::margin-bottom notify::margin-end notify::margin-left notify::margin-right notify::margin-start notify::margin-top notify::max-content-height notify::max-content-width notify::min-content-height notify::min-content-width notify::name notify::no-show-all notify::opacity notify::open-flags notify::overlay-scrolling notify::parent notify::populate-all notify::propagate-natural-height notify::propagate-natural-width notify::receives-default notify::resize-mode notify::scale-factor notify::sensitive notify::shadow-type notify::show-connect-to-server notify::show-desktop notify::show-enter-location notify::show-other-locations notify::show-recent notify::show-starred-location notify::show-trash notify::style notify::tooltip-markup notify::tooltip-text notify::vadjustment notify::valign notify::vexpand notify::vexpand-set notify::visible notify::vscrollbar-policy notify::width-request notify::window notify::window-placement notify::window-placement-set open-location populate-popup show-connect-to-server show-enter-location show-error-message show-other-locations show-other-locations-with-flags show-starred-location unmount

Properties - Inherited from Gtk.ScrolledWindow.SignalSignatures

accel-closures-changed add button-press-event button-release-event can-activate-accel check-resize child-notify child-notify::app-paintable child-notify::can-default child-notify::can-focus child-notify::composite-child child-notify::double-buffered child-notify::events child-notify::expand child-notify::focus-on-click child-notify::halign child-notify::has-default child-notify::has-focus child-notify::has-tooltip child-notify::height-request child-notify::hexpand child-notify::hexpand-set child-notify::is-focus child-notify::margin child-notify::margin-bottom child-notify::margin-end child-notify::margin-left child-notify::margin-right child-notify::margin-start child-notify::margin-top child-notify::name child-notify::no-show-all child-notify::opacity child-notify::parent child-notify::receives-default child-notify::scale-factor child-notify::sensitive child-notify::style child-notify::tooltip-markup child-notify::tooltip-text child-notify::valign child-notify::vexpand child-notify::vexpand-set child-notify::visible child-notify::width-request child-notify::window composited-changed configure-event damage-event delete-event destroy destroy-event direction-changed drag-begin drag-data-delete drag-data-get drag-data-received drag-drop drag-end drag-failed drag-leave drag-motion draw edge-overshot edge-reached enter-notify-event event event-after focus focus-in-event focus-out-event grab-broken-event grab-focus grab-notify hide hierarchy-changed key-press-event key-release-event keynav-failed leave-notify-event map map-event mnemonic-activate motion-notify-event move-focus move-focus-out notify parent-set popup-menu property-notify-event proximity-in-event proximity-out-event query-tooltip realize remove screen-changed scroll-child scroll-event selection-clear-event selection-get selection-notify-event selection-received selection-request-event set-focus-child show show-help size-allocate state-changed state-flags-changed style-set style-updated touch-event unmap unmap-event unrealize visibility-notify-event window-state-event

Properties

"drag-action-ask": (arg0: number) => number

The places sidebar emits this signal when it needs to ask the application to pop up a menu to ask the user for which drag action to perform.

3.10

"drag-action-requested": (
    arg0: Gdk.DragContext,
    arg1: Gio.File,
    arg2: Gio.File[],
) => number

When the user starts a drag-and-drop operation and the sidebar needs to ask the application for which drag action to perform, then the sidebar will emit this signal.

The application can evaluate the context for customary actions, or it can check the type of the files indicated by source_file_list against the possible actions for the destination dest_file.

The drag action to use must be the return value of the signal handler.

3.10

"drag-perform-drop": (arg0: Gio.File, arg1: Gio.File[], arg2: number) => void

The places sidebar emits this signal when the user completes a drag-and-drop operation and one of the sidebar's items is the destination. This item is in the dest_file, and the source_file_list has the list of files that are dropped into it and which should be copied/moved/etc. based on the specified action.

3.10

mount: (arg0: Gio.MountOperation) => void

The places sidebar emits this signal when it starts a new operation because the user clicked on some location that needs mounting. In this way the application using the Gtk.PlacesSidebar can track the progress of the operation and, for example, show a notification.

3.20

"notify::app-paintable": (pspec: GObject.ParamSpec) => void
"notify::border-width": (pspec: GObject.ParamSpec) => void
"notify::can-default": (pspec: GObject.ParamSpec) => void
"notify::can-focus": (pspec: GObject.ParamSpec) => void
"notify::child": (pspec: GObject.ParamSpec) => void
"notify::composite-child": (pspec: GObject.ParamSpec) => void
"notify::double-buffered": (pspec: GObject.ParamSpec) => void
"notify::events": (pspec: GObject.ParamSpec) => void
"notify::expand": (pspec: GObject.ParamSpec) => void
"notify::focus-on-click": (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::hscrollbar-policy": (pspec: GObject.ParamSpec) => void
"notify::is-focus": (pspec: GObject.ParamSpec) => void
"notify::kinetic-scrolling": (pspec: GObject.ParamSpec) => void
"notify::local-only": (pspec: GObject.ParamSpec) => void
"notify::location": (pspec: GObject.ParamSpec) => void
"notify::margin": (pspec: GObject.ParamSpec) => void
"notify::margin-bottom": (pspec: GObject.ParamSpec) => void
"notify::margin-end": (pspec: GObject.ParamSpec) => void
"notify::margin-left": (pspec: GObject.ParamSpec) => void
"notify::margin-right": (pspec: GObject.ParamSpec) => void
"notify::margin-start": (pspec: GObject.ParamSpec) => void
"notify::margin-top": (pspec: GObject.ParamSpec) => void
"notify::max-content-height": (pspec: GObject.ParamSpec) => void
"notify::max-content-width": (pspec: GObject.ParamSpec) => void
"notify::min-content-height": (pspec: GObject.ParamSpec) => void
"notify::min-content-width": (pspec: GObject.ParamSpec) => void
"notify::name": (pspec: GObject.ParamSpec) => void
"notify::no-show-all": (pspec: GObject.ParamSpec) => void
"notify::opacity": (pspec: GObject.ParamSpec) => void
"notify::open-flags": (pspec: GObject.ParamSpec) => void
"notify::overlay-scrolling": (pspec: GObject.ParamSpec) => void
"notify::parent": (pspec: GObject.ParamSpec) => void
"notify::populate-all": (pspec: GObject.ParamSpec) => void
"notify::propagate-natural-height": (pspec: GObject.ParamSpec) => void
"notify::propagate-natural-width": (pspec: GObject.ParamSpec) => void
"notify::receives-default": (pspec: GObject.ParamSpec) => void
"notify::resize-mode": (pspec: GObject.ParamSpec) => void
"notify::scale-factor": (pspec: GObject.ParamSpec) => void
"notify::sensitive": (pspec: GObject.ParamSpec) => void
"notify::shadow-type": (pspec: GObject.ParamSpec) => void
"notify::show-connect-to-server": (pspec: GObject.ParamSpec) => void
"notify::show-desktop": (pspec: GObject.ParamSpec) => void
"notify::show-enter-location": (pspec: GObject.ParamSpec) => void
"notify::show-other-locations": (pspec: GObject.ParamSpec) => void
"notify::show-recent": (pspec: GObject.ParamSpec) => void
"notify::show-starred-location": (pspec: GObject.ParamSpec) => void
"notify::show-trash": (pspec: GObject.ParamSpec) => void
"notify::style": (pspec: GObject.ParamSpec) => void
"notify::tooltip-markup": (pspec: GObject.ParamSpec) => void
"notify::tooltip-text": (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::vscrollbar-policy": (pspec: GObject.ParamSpec) => void
"notify::width-request": (pspec: GObject.ParamSpec) => void
"notify::window": (pspec: GObject.ParamSpec) => void
"notify::window-placement": (pspec: GObject.ParamSpec) => void
"notify::window-placement-set": (pspec: GObject.ParamSpec) => void
"open-location": (arg0: Gio.File, arg1: Gtk.PlacesOpenFlags) => void

The places sidebar emits this signal when the user selects a location in it. The calling application should display the contents of that location; for example, a file manager should show a list of files in the specified location.

3.10

"populate-popup": (arg0: Gtk.Widget, arg1: Gio.File, arg2: Gio.Volume) => void

The places sidebar emits this signal when the user invokes a contextual popup on one of its items. In the signal handler, the application may add extra items to the menu as appropriate. For example, a file manager may want to add a "Properties" command to the menu.

It is not necessary to store the selected_item for each menu item; during their callbacks, the application can use gtk_places_sidebar_get_location() to get the file to which the item refers.

The selected_item argument may be null in case the selection refers to a volume. In this case, selected_volume will be non-null. In this case, the calling application will have to g_object_ref() the selected_volume and keep it around to use it in the callback.

The container and all its contents are destroyed after the user dismisses the popup. The popup is re-created (and thus, this signal is emitted) every time the user activates the contextual menu.

Before 3.18, the container always was a Gtk.Menu, and you were expected to add your items as GtkMenuItems. Since 3.18, the popup may be implemented as a Gtk.Popover, in which case container will be something else, e.g. a Gtk.Box, to which you may add GtkModelButtons or other widgets, such as GtkEntries, GtkSpinButtons, etc. If your application can deal with this situation, you can set Gtk.PlacesSidebar.SignalSignatures.populate_all | Gtk.PlacesSidebar::populate-all to true to request that this signal is emitted for populating popovers as well.

3.10

"show-connect-to-server": () => void

The places sidebar emits this signal when it needs the calling application to present an way to connect directly to a network server. For example, the application may bring up a dialog box asking for a URL like "sftp://ftp.example.com". It is up to the application to create the corresponding mount by using, for example, g_file_mount_enclosing_volume().

since 3.18: use the Gtk.PlacesSidebar.SignalSignatures.show_other_locations | Gtk.PlacesSidebar::show-other-locations signal to connect to network servers.

"show-enter-location": () => void

The places sidebar emits this signal when it needs the calling application to present an way to directly enter a location. For example, the application may bring up a dialog box asking for a URL like "http://http.example.com".

3.14

"show-error-message": (arg0: string, arg1: string) => void

The places sidebar emits this signal when it needs the calling application to present an error message. Most of these messages refer to mounting or unmounting media, for example, when a drive cannot be started for some reason.

3.10

"show-other-locations": () => void

The places sidebar emits this signal when it needs the calling application to present a way to show other locations e.g. drives and network access points. For example, the application may bring up a page showing persistent volumes and discovered network addresses.

3.18

since 3.20: use the Gtk.PlacesSidebar.SignalSignatures.show_other_locations_with_flags | Gtk.PlacesSidebar::show-other-locations-with-flags which includes the open flags in order to allow the user to specify to open in a new tab or window, in a similar way than Gtk.PlacesSidebar.SignalSignatures.open_location | Gtk.PlacesSidebar::open-location

"show-other-locations-with-flags": (arg0: Gtk.PlacesOpenFlags) => void

The places sidebar emits this signal when it needs the calling application to present a way to show other locations e.g. drives and network access points. For example, the application may bring up a page showing persistent volumes and discovered network addresses.

3.20

"show-starred-location": (arg0: Gtk.PlacesOpenFlags) => void

The places sidebar emits this signal when it needs the calling application to present a way to show the starred files. In GNOME, starred files are implemented by setting the nao:predefined-tag-favorite tag in the tracker database.

3.22.26

unmount: (arg0: Gio.MountOperation) => void

The places sidebar emits this signal when it starts a new operation because the user for example ejected some drive or unmounted a mount. In this way the application using the Gtk.PlacesSidebar can track the progress of the operation and, for example, show a notification.

3.20

Properties - Inherited from Gtk.ScrolledWindow.SignalSignatures

"accel-closures-changed": () => void
add: (arg0: Gtk.Widget) => void
"button-press-event": (arg0: EventButton) => boolean | void

The ::button-press-event signal will be emitted when a button (typically from a mouse) is pressed.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_BUTTON_PRESS_MASK mask.

This signal will be sent to the grab widget if there is one.

"button-release-event": (arg0: EventButton) => boolean | void

The ::button-release-event signal will be emitted when a button (typically from a mouse) is released.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_BUTTON_RELEASE_MASK mask.

This signal will be sent to the grab widget if there is one.

"can-activate-accel": (arg0: number) => boolean | void

Determines whether an accelerator that activates the signal identified by signal_id can currently be activated. This signal is present to allow applications and derived widgets to override the default Gtk.Widget handling for determining whether an accelerator can be activated.

"check-resize": () => void
"child-notify": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::app-paintable": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::can-default": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::can-focus": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::composite-child": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::double-buffered": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::events": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::expand": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::focus-on-click": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::halign": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::has-default": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::has-focus": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::has-tooltip": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::height-request": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::hexpand": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::hexpand-set": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::is-focus": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::margin": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::margin-bottom": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::margin-end": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::margin-left": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::margin-right": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::margin-start": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::margin-top": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::name": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::no-show-all": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::opacity": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::parent": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::receives-default": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::scale-factor": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::sensitive": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::style": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::tooltip-markup": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::tooltip-text": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::valign": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::vexpand": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::vexpand-set": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::visible": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::width-request": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"child-notify::window": (arg0: GObject.ParamSpec) => void

The ::child-notify signal is emitted for each [child property][child-properties] that has changed on an object. The signal's detail holds the property name.

"composited-changed": () => void

The ::composited-changed signal is emitted when the composited status of widgets screen changes. See gdk_screen_is_composited().

since 3.22: Use GdkScreen::composited-changed instead.

"configure-event": (arg0: EventConfigure) => boolean | void

The ::configure-event signal will be emitted when the size, position or stacking of the widget's window has changed.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_STRUCTURE_MASK mask. GDK will enable this mask automatically for all new windows.

"damage-event": (arg0: EventExpose) => boolean | void

Emitted when a redirected window belonging to widget gets drawn into. The region/area members of the event shows what area of the redirected drawable was drawn into.

2.14

"delete-event": (arg0: Gdk.Event) => boolean | void

The ::delete-event signal is emitted if a user requests that a toplevel window is closed. The default handler for this signal destroys the window. Connecting gtk_widget_hide_on_delete() to this signal will cause the window to be hidden instead, so that it can later be shown again without reconstructing it.

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.

"destroy-event": (arg0: Gdk.Event) => boolean | void

The ::destroy-event signal is emitted when a Gdk.Window is destroyed. You rarely get this signal, because most widgets disconnect themselves from their window before they destroy it, so no widget owns the window at destroy time.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_STRUCTURE_MASK mask. GDK will enable this mask automatically for all new windows.

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

The ::direction-changed signal is emitted when the text direction of a widget changes.

"drag-begin": (arg0: Gdk.DragContext) => void

The ::drag-begin signal is emitted on the drag source when a drag is started. A typical reason to connect to this signal is to set up a custom drag icon with e.g. gtk_drag_source_set_icon_pixbuf().

Note that some widgets set up a drag icon in the default handler of this signal, so you may have to use g_signal_connect_after() to override what the default handler did.

"drag-data-delete": (arg0: Gdk.DragContext) => void

The ::drag-data-delete signal is emitted on the drag source when a drag with the action Gdk.DragAction.MOVE is successfully completed. The signal handler is responsible for deleting the data that has been dropped. What "delete" means depends on the context of the drag operation.

"drag-data-get": (
    arg0: Gdk.DragContext,
    arg1: SelectionData,
    arg2: number,
    arg3: number,
) => void

The ::drag-data-get signal is emitted on the drag source when the drop site requests the data which is dragged. It is the responsibility of the signal handler to fill data with the data in the format which is indicated by info. See gtk_selection_data_set() and gtk_selection_data_set_text().

"drag-data-received": (
    arg0: Gdk.DragContext,
    arg1: number,
    arg2: number,
    arg3: SelectionData,
    arg4: number,
    arg5: number,
) => void

The ::drag-data-received signal is emitted on the drop site when the dragged data has been received. If the data was received in order to determine whether the drop will be accepted, the handler is expected to call gdk_drag_status() and not finish the drag. If the data was received in response to a Gtk.Widget.SignalSignatures.drag_drop | Gtk.Widget::drag-drop signal (and this is the last target to be received), the handler for this signal is expected to process the received data and then call gtk_drag_finish(), setting the success parameter depending on whether the data was processed successfully.

Applications must create some means to determine why the signal was emitted and therefore whether to call gdk_drag_status() or gtk_drag_finish().

The handler may inspect the selected action with gdk_drag_context_get_selected_action() before calling gtk_drag_finish(), e.g. to implement Gdk.DragAction.ASK as shown in the following example:

void
drag_data_received (GtkWidget *widget,
GdkDragContext *context,
gint x,
gint y,
GtkSelectionData *data,
guint info,
guint time)
{
if ((data->length >= 0) && (data->format == 8))
{
GdkDragAction action;

// handle data here

action = gdk_drag_context_get_selected_action (context);
if (action == GDK_ACTION_ASK)
{
GtkWidget *dialog;
gint response;

dialog = gtk_message_dialog_new (NULL,
GTK_DIALOG_MODAL |
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_INFO,
GTK_BUTTONS_YES_NO,
"Move the data ?\n");
response = gtk_dialog_run (GTK_DIALOG (dialog));
gtk_widget_destroy (dialog);

if (response == GTK_RESPONSE_YES)
action = GDK_ACTION_MOVE;
else
action = GDK_ACTION_COPY;
}

gtk_drag_finish (context, TRUE, action == GDK_ACTION_MOVE, time);
}
else
gtk_drag_finish (context, FALSE, FALSE, time);
}
"drag-drop": (
    arg0: Gdk.DragContext,
    arg1: number,
    arg2: number,
    arg3: number,
) => boolean | void

The ::drag-drop signal is emitted on the drop site when the user drops the data onto the widget. The signal handler must determine whether the cursor position is in a drop zone or not. If it is not in a drop zone, it returns false and no further processing is necessary. Otherwise, the handler returns true. In this case, the handler must ensure that gtk_drag_finish() is called to let the source know that the drop is done. The call to gtk_drag_finish() can be done either directly or in a Gtk.Widget.SignalSignatures.drag_data_received | Gtk.Widget::drag-data-received handler which gets triggered by calling gtk_drag_get_data() to receive the data for one or more of the supported targets.

"drag-end": (arg0: Gdk.DragContext) => void

The ::drag-end signal is emitted on the drag source when a drag is finished. A typical reason to connect to this signal is to undo things done in Gtk.Widget.SignalSignatures.drag_begin | Gtk.Widget::drag-begin.

"drag-failed": (arg0: Gdk.DragContext, arg1: Gtk.DragResult) => boolean | void

The ::drag-failed signal is emitted on the drag source when a drag has failed. The signal handler may hook custom code to handle a failed DnD operation based on the type of error, it returns true is the failure has been already handled (not showing the default "drag operation failed" animation), otherwise it returns false.

2.12

"drag-leave": (arg0: Gdk.DragContext, arg1: number) => void

The ::drag-leave signal is emitted on the drop site when the cursor leaves the widget. A typical reason to connect to this signal is to undo things done in Gtk.Widget.SignalSignatures.drag_motion | Gtk.Widget::drag-motion, e.g. undo highlighting with gtk_drag_unhighlight().

Likewise, the Gtk.Widget.SignalSignatures.drag_leave | Gtk.Widget::drag-leave signal is also emitted before the ::drag-drop signal, for instance to allow cleaning up of a preview item created in the Gtk.Widget.SignalSignatures.drag_motion | Gtk.Widget::drag-motion signal handler.

"drag-motion": (
    arg0: Gdk.DragContext,
    arg1: number,
    arg2: number,
    arg3: number,
) => boolean | void

The ::drag-motion signal is emitted on the drop site when the user moves the cursor over the widget during a drag. The signal handler must determine whether the cursor position is in a drop zone or not. If it is not in a drop zone, it returns false and no further processing is necessary. Otherwise, the handler returns true. In this case, the handler is responsible for providing the necessary information for displaying feedback to the user, by calling gdk_drag_status().

If the decision whether the drop will be accepted or rejected can't be made based solely on the cursor position and the type of the data, the handler may inspect the dragged data by calling gtk_drag_get_data() and defer the gdk_drag_status() call to the Gtk.Widget.SignalSignatures.drag_data_received | Gtk.Widget::drag-data-received handler. Note that you must pass #GTK_DEST_DEFAULT_DROP, #GTK_DEST_DEFAULT_MOTION or #GTK_DEST_DEFAULT_ALL to gtk_drag_dest_set() when using the drag-motion signal that way.

Also note that there is no drag-enter signal. The drag receiver has to keep track of whether he has received any drag-motion signals since the last Gtk.Widget.SignalSignatures.drag_leave | Gtk.Widget::drag-leave and if not, treat the drag-motion signal as an "enter" signal. Upon an "enter", the handler will typically highlight the drop site with gtk_drag_highlight().

static void
drag_motion (GtkWidget *widget,
GdkDragContext *context,
gint x,
gint y,
guint time)
{
GdkAtom target;

PrivateData *private_data = GET_PRIVATE_DATA (widget);

if (!private_data->drag_highlight)
{
private_data->drag_highlight = 1;
gtk_drag_highlight (widget);
}

target = gtk_drag_dest_find_target (widget, context, NULL);
if (target == GDK_NONE)
gdk_drag_status (context, 0, time);
else
{
private_data->pending_status
= gdk_drag_context_get_suggested_action (context);
gtk_drag_get_data (widget, context, target, time);
}

return TRUE;
}

static void
drag_data_received (GtkWidget *widget,
GdkDragContext *context,
gint x,
gint y,
GtkSelectionData *selection_data,
guint info,
guint time)
{
PrivateData *private_data = GET_PRIVATE_DATA (widget);

if (private_data->suggested_action)
{
private_data->suggested_action = 0;

// We are getting this data due to a request in drag_motion,
// rather than due to a request in drag_drop, so we are just
// supposed to call `gdk_drag_status()`, not actually paste in
// the data.

str = gtk_selection_data_get_text (selection_data);
if (!data_is_acceptable (str))
gdk_drag_status (context, 0, time);
else
gdk_drag_status (context,
private_data->suggested_action,
time);
}
else
{
// accept the drop
}
}
draw: (arg0: default.Context) => boolean | void

This signal is emitted when a widget is supposed to render itself. The widget's top left corner must be painted at the origin of the passed in context and be sized to the values returned by gtk_widget_get_allocated_width() and gtk_widget_get_allocated_height().

Signal handlers connected to this signal can modify the cairo context passed as cr in any way they like and don't need to restore it. The signal emission takes care of calling cairo_save() before and cairo_restore() after invoking the handler.

The signal handler will get a cr with a clip region already set to the widget's dirty region, i.e. to the area that needs repainting. Complicated widgets that want to avoid redrawing themselves completely can get the full extents of the clip region with gdk_cairo_get_clip_rectangle(), or they can get a finer-grained representation of the dirty region with cairo_copy_clip_rectangle_list().

3.0

"edge-overshot": (arg0: Gtk.PositionType) => void

The ::edge-overshot signal is emitted whenever user initiated scrolling makes the scrolled window firmly surpass (i.e. with some edge resistance) the lower or upper limits defined by the adjustment in that orientation.

A similar behavior without edge resistance is provided by the Gtk.ScrolledWindow.SignalSignatures.edge_reached | Gtk.ScrolledWindow::edge-reached signal.

Note: The pos argument is LTR/RTL aware, so callers should be aware too if intending to provide behavior on horizontal edges.

3.16

"edge-reached": (arg0: Gtk.PositionType) => void

The ::edge-reached signal is emitted whenever user-initiated scrolling makes the scrolled window exactly reach the lower or upper limits defined by the adjustment in that orientation.

A similar behavior with edge resistance is provided by the Gtk.ScrolledWindow.SignalSignatures.edge_overshot | Gtk.ScrolledWindow::edge-overshot signal.

Note: The pos argument is LTR/RTL aware, so callers should be aware too if intending to provide behavior on horizontal edges.

3.16

"enter-notify-event": (arg0: EventCrossing) => boolean | void

The ::enter-notify-event will be emitted when the pointer enters the widget's window.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_ENTER_NOTIFY_MASK mask.

This signal will be sent to the grab widget if there is one.

event: (arg0: Gdk.Event) => boolean | void

The GTK+ main loop will emit three signals for each GDK event delivered to a widget: one generic ::event signal, another, more specific, signal that matches the type of event delivered (e.g. Gtk.Widget.SignalSignatures.key_press_event | Gtk.Widget::key-press-event) and finally a generic Gtk.Widget.SignalSignatures.event_after | Gtk.Widget::event-after signal.

"event-after": (arg0: Gdk.Event) => void

After the emission of the Gtk.Widget::event signal and (optionally) the second more specific signal, ::event-after will be emitted regardless of the previous two signals handlers return values.

focus: (arg0: Gtk.DirectionType) => boolean | void
"focus-in-event": (arg0: EventFocus) => boolean | void

The ::focus-in-event signal will be emitted when the keyboard focus enters the widget's window.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_FOCUS_CHANGE_MASK mask.

"focus-out-event": (arg0: EventFocus) => boolean | void

The ::focus-out-event signal will be emitted when the keyboard focus leaves the widget's window.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_FOCUS_CHANGE_MASK mask.

"grab-broken-event": (arg0: EventGrabBroken) => boolean | void

Emitted when a pointer or keyboard grab on a window belonging to widget gets broken.

On X11, this happens when the grab window becomes unviewable (i.e. it or one of its ancestors is unmapped), or if the same application grabs the pointer or keyboard again.

2.8

"grab-focus": () => void
"grab-notify": (arg0: boolean) => void

The ::grab-notify signal is emitted when a widget becomes shadowed by a GTK+ grab (not a pointer or keyboard grab) on another widget, or when it becomes unshadowed due to a grab being removed.

A widget is shadowed by a gtk_grab_add() when the topmost grab widget in the grab stack of its window group is not its ancestor.

hide: () => void

The ::hide signal is emitted when widget is hidden, for example with gtk_widget_hide().

"hierarchy-changed": (arg0: Gtk.Widget) => void

The ::hierarchy-changed signal is emitted when the anchored state of a widget changes. A widget is “anchored” when its toplevel ancestor is a Gtk.Window. This signal is emitted when a widget changes from un-anchored to anchored or vice-versa.

"key-press-event": (arg0: EventKey) => boolean | void

The ::key-press-event signal is emitted when a key is pressed. The signal emission will reoccur at the key-repeat rate when the key is kept pressed.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_KEY_PRESS_MASK mask.

This signal will be sent to the grab widget if there is one.

"key-release-event": (arg0: EventKey) => boolean | void

The ::key-release-event signal is emitted when a key is released.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_KEY_RELEASE_MASK mask.

This signal will be sent to the grab widget if there is one.

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

Gets emitted if keyboard navigation fails. See gtk_widget_keynav_failed() for details.

2.12

"leave-notify-event": (arg0: EventCrossing) => boolean | void

The ::leave-notify-event will be emitted when the pointer leaves the widget's window.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_LEAVE_NOTIFY_MASK mask.

This signal will be sent to the grab widget if there is one.

map: () => void

The ::map signal is emitted when widget is going to be mapped, that is when the widget is visible (which is controlled with gtk_widget_set_visible()) and all its parents up to the toplevel widget are also visible. Once the map has occurred, Gtk.Widget.SignalSignatures.map_event | Gtk.Widget::map-event will be emitted.

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.

"map-event": (arg0: EventAny) => boolean | void

The ::map-event signal will be emitted when the widget's window is mapped. A window is mapped when it becomes visible on the screen.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_STRUCTURE_MASK mask. GDK will enable this mask automatically for all new windows.

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

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

"motion-notify-event": (arg0: EventMotion) => boolean | void

The ::motion-notify-event signal is emitted when the pointer moves over the widget's Gdk.Window.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_POINTER_MOTION_MASK mask.

This signal will be sent to the grab widget if there is one.

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

The ::move-focus-out signal is a [keybinding signal][GtkBindingSignal] which gets emitted when focus is moved away from the scrolled window by a keybinding. The Gtk.Widget.SignalSignatures.move_focus | Gtk.Widget::move-focus signal is emitted with direction_type on this scrolled window’s toplevel parent in the container hierarchy. The default bindings for this signal are Ctrl + Tab to move forward and Ctrl + 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.

"parent-set": (arg0: Gtk.Widget) => void

The ::parent-set signal is emitted when a new parent has been set on a widget.

"popup-menu": () => boolean | void

This signal gets emitted whenever a widget should pop up a context menu. This usually happens through the standard key binding mechanism; by pressing a certain key while a widget is focused, the user can cause the widget to pop up a menu. For example, the Gtk.Entry widget creates a menu with clipboard commands. See the [Popup Menu Migration Checklist][checklist-popup-menu] for an example of how to use this signal.

"property-notify-event": (arg0: EventProperty) => boolean | void

The ::property-notify-event signal will be emitted when a property on the widget's window has been changed or deleted.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_PROPERTY_CHANGE_MASK mask.

"proximity-in-event": (arg0: EventProximity) => boolean | void

To receive this signal the Gdk.Window associated to the widget needs to enable the #GDK_PROXIMITY_IN_MASK mask.

This signal will be sent to the grab widget if there is one.

"proximity-out-event": (arg0: EventProximity) => boolean | void

To receive this signal the Gdk.Window associated to the widget needs to enable the #GDK_PROXIMITY_OUT_MASK mask.

This signal will be sent to the grab widget if there is one.

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

Emitted when Gtk.Widget.has_tooltip 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.

2.12

realize: () => void

The ::realize signal is emitted when widget is associated with a Gdk.Window, which means that gtk_widget_realize() has been called or the widget has been mapped (that is, it is going to be drawn).

remove: (arg0: Gtk.Widget) => void
"screen-changed": (arg0: Gdk.Screen) => void

The ::screen-changed signal gets emitted when the screen of a widget has changed.

"scroll-child": (arg0: Gtk.ScrollType, arg1: boolean) => boolean | void

The ::scroll-child signal is a [keybinding signal][GtkBindingSignal] which gets emitted when a keybinding that scrolls is pressed. The horizontal or vertical adjustment is updated which triggers a signal that the scrolled window’s child may listen to and scroll itself.

"scroll-event": (arg0: EventScroll) => boolean | void

The ::scroll-event signal is emitted when a button in the 4 to 7 range is pressed. Wheel mice are usually configured to generate button press events for buttons 4 and 5 when the wheel is turned.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_SCROLL_MASK mask.

This signal will be sent to the grab widget if there is one.

"selection-clear-event": (arg0: EventSelection) => boolean | void

The ::selection-clear-event signal will be emitted when the the widget's window has lost ownership of a selection.

"selection-get": (arg0: SelectionData, arg1: number, arg2: number) => void
"selection-notify-event": (arg0: EventSelection) => boolean | void
"selection-received": (arg0: SelectionData, arg1: number) => void
"selection-request-event": (arg0: EventSelection) => boolean | void

The ::selection-request-event signal will be emitted when another client requests ownership of the selection owned by the widget's window.

"set-focus-child": (arg0: Gtk.Widget) => void
show: () => void

The ::show signal is emitted when widget is shown, for example with gtk_widget_show().

"show-help": (arg0: Gtk.WidgetHelpType) => boolean | void
"size-allocate": (arg0: Gdk.Rectangle) => void
"state-changed": (arg0: Gtk.StateType) => void

The ::state-changed signal is emitted when the widget state changes. See gtk_widget_get_state().

since 3.0: Use Gtk.Widget.SignalSignatures.state_flags_changed | Gtk.Widget::state-flags-changed instead.

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

The ::state-flags-changed signal is emitted when the widget state changes, see gtk_widget_get_state_flags().

3.0

"style-set": (arg0: Gtk.Style) => void

The ::style-set signal is emitted when a new style has been set on a widget. Note that style-modifying functions like gtk_widget_modify_base() also cause this signal to be emitted.

Note that this signal is emitted for changes to the deprecated Gtk.Style. To track changes to the Gtk.StyleContext associated with a widget, use the Gtk.Widget.SignalSignatures.style_updated | Gtk.Widget::style-updated signal.

since 3.0: Use the Gtk.Widget.SignalSignatures.style_updated | Gtk.Widget::style-updated signal

"style-updated": () => void

The ::style-updated signal is a convenience signal that is emitted when the Gtk.StyleContext::changed signal is emitted on the widget's associated Gtk.StyleContext as returned by gtk_widget_get_style_context().

Note that style-modifying functions like gtk_widget_override_color() also cause this signal to be emitted.

3.0

"touch-event": (arg0: Gdk.Event) => boolean | void
unmap: () => void

The ::unmap signal is emitted when widget is going to be unmapped, which means that 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.

"unmap-event": (arg0: EventAny) => boolean | void

The ::unmap-event signal will be emitted when the widget's window is unmapped. A window is unmapped when it becomes invisible on the screen.

To receive this signal, the Gdk.Window associated to the widget needs to enable the #GDK_STRUCTURE_MASK mask. GDK will enable this mask automatically for all new windows.

unrealize: () => void

The ::unrealize signal is emitted when the Gdk.Window associated with widget is destroyed, which means that gtk_widget_unrealize() has been called or the widget has been unmapped (that is, it is going to be hidden).

"visibility-notify-event": (arg0: EventVisibility) => boolean | void

The ::visibility-notify-event will be emitted when the widget's window is obscured or unobscured.

To receive this signal the Gdk.Window associated to the widget needs to enable the #GDK_VISIBILITY_NOTIFY_MASK mask.

since 3.12: Modern composited windowing systems with pervasive transparency make it impossible to track the visibility of a window reliably, so this signal can not be guaranteed to provide useful information.

"window-state-event": (arg0: EventWindowState) => boolean | void

The ::window-state-event will be emitted when the state of the toplevel window associated to the widget changes.

To receive this signal the Gdk.Window associated to the widget needs to enable the #GDK_STRUCTURE_MASK mask. GDK will enable this mask automatically for all new windows.