GObject.signal_handlers_disconnect_matched

function signal_handlers_disconnect_matched(instance: GObject.Object, mask: GObject.SignalMatchType, signal_id: Number(guint), detail: GLib.Quark, closure: Function, func: void, data: void): Number(guint) {
    // Gjs wrapper for g_signal_handlers_disconnect_matched()
}
  

Disconnects all handlers on an instance that match a certain selection criteria. The criteria mask is passed as an OR-ed combination of GObject.SignalMatchType flags, and the criteria values are passed as arguments. Passing at least one of the GObject.SignalMatchType.closure, GObject.SignalMatchType.func or GObject.SignalMatchType.data match flags is required for successful matches. If no handlers were found, 0 is returned, the number of disconnected handlers otherwise.

instance

The instance to remove handlers from.

mask

Mask indicating which of signal_id, detail, closure, func and/or data the handlers have to match.

signal_id

Signal the handlers have to be connected to.

detail

Signal detail the handlers have to be connected to.

closure

The closure the handlers will invoke.

func

The C closure callback of the handlers (useless for non-C closures).

data

The closure data of the handlers' closures.

Returns

The number of handlers that matched.