detached 9d80213

All: Use SignalConnectData instead of ObjectConnect

This allows us to disconnect signals as ObjectConnect does not return
a handler id. Also adds a ConnectSignal helper that uses
SignalConnectData instead of ObjectConnect
commit
9d802131f039ee5712a97c2a00206ae1e8694a1f
author
jwijenbergh · · 2023-10-09 10:02 UTC
committer
jwijenbergh · · 2023-10-09 10:04 UTC
parent
3f56692
signature
GPG Unverified1A2298F6C34F96E5 The key is unknown
146 files · +924 -908
M templates/go +2 -2
@@ -147,7 +147,7 @@ func (c *{{.Name}}) SetGoPointer(ptr uintptr) {
147147 {{range .Signals -}}
148148
149149 {{.Doc}}
150-func (x *{{$outer.Name}}) Connect{{.Name}}(cb func({{$outer.Name}} {{convc .Args.API.Types}}) {{.Ret.Value}}) {
150+func (x *{{$outer.Name}}) Connect{{.Name}}(cb func({{$outer.Name}} {{convc .Args.API.Types}}) {{.Ret.Value}}) uint32 {
151151 fcb := func(clsPtr uintptr {{convc .Args.Pure.Full}}) {{.Ret.Raw}} {
152152 fa := {{$outer.Name}}{}
153153 fa.Ptr = clsPtr
@@ -160,7 +160,7 @@ func (x *{{$outer.Name}}) Connect{{.Name}}(cb func({{$outer.Name}} {{convc .Args
160160 cb(fa {{convc .Args.Pure.Call}})
161161 {{end}}
162162 }
163- {{if $NotGObject}}gobject.{{end}}ObjectConnect(x.GoPointer(), "signal::{{.CName}}", purego.NewCallback(fcb))
163+ return {{if $NotGObject}}gobject.{{end}}SignalConnect(x.GoPointer(), "{{.CName}}", purego.NewCallback(fcb))
164164 }
165165 {{end}}
166166
M templates/gobject +10 -2
@@ -30,14 +30,22 @@ func IncreaseRef(a uintptr) {
3030 xObjectRefSink(a)
3131 }
3232
33-func ObjectConnect(a uintptr, b string, c ...interface{}) uintptr {
34- return xObjectConnect(a, b, c...)
33+func SignalConnect(a uintptr, b string, c uintptr) uint32 {
34+ return xSignalConnectData(a, b, c, 0, 0, 0)
3535 }
3636
3737 func (o Object) Cast(v Ptr) {
3838 v.SetGoPointer(o.GoPointer())
3939 }
4040
41+func (o Object) ConnectSignal(signal string, cb func()) uint32 {
42+ return SignalConnect(o.GoPointer(), signal, purego.NewCallback(cb))
43+}
44+
45+func (o Object) DisconnectSignal(handler uint32) {
46+ SignalHandlerDisconnect(&o, handler)
47+}
48+
4149 // NewCallback is an alias to purego.NewCallback
4250 func NewCallback(fn interface{}) uintptr {
4351 return purego.NewCallback(fn)
M v4/adw/adw-about-window.go +2 -2
@@ -899,7 +899,7 @@ func (c *AboutWindow) SetGoPointer(ptr uintptr) {
899899 //
900900 // Applications may connect to it to override the default behavior, which is
901901 // to call [func@Gtk.show_uri].
902-func (x *AboutWindow) ConnectActivateLink(cb func(AboutWindow, string) bool) {
902+func (x *AboutWindow) ConnectActivateLink(cb func(AboutWindow, string) bool) uint32 {
903903 fcb := func(clsPtr uintptr, UriVarp string) bool {
904904 fa := AboutWindow{}
905905 fa.Ptr = clsPtr
@@ -907,7 +907,7 @@ func (x *AboutWindow) ConnectActivateLink(cb func(AboutWindow, string) bool) {
907907 return cb(fa, UriVarp)
908908
909909 }
910- gobject.ObjectConnect(x.GoPointer(), "signal::activate-link", purego.NewCallback(fcb))
910+ return gobject.SignalConnect(x.GoPointer(), "activate-link", purego.NewCallback(fcb))
911911 }
912912
913913 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/adw/adw-action-row.go +2 -2
@@ -259,7 +259,7 @@ func (c *ActionRow) SetGoPointer(ptr uintptr) {
259259 }
260260
261261 // This signal is emitted after the row has been activated.
262-func (x *ActionRow) ConnectActivated(cb func(ActionRow)) {
262+func (x *ActionRow) ConnectActivated(cb func(ActionRow)) uint32 {
263263 fcb := func(clsPtr uintptr) {
264264 fa := ActionRow{}
265265 fa.Ptr = clsPtr
@@ -267,7 +267,7 @@ func (x *ActionRow) ConnectActivated(cb func(ActionRow)) {
267267 cb(fa)
268268
269269 }
270- gobject.ObjectConnect(x.GoPointer(), "signal::activated", purego.NewCallback(fcb))
270+ return gobject.SignalConnect(x.GoPointer(), "activated", purego.NewCallback(fcb))
271271 }
272272
273273 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/adw/adw-animation.go +2 -2
@@ -272,7 +272,7 @@ func (c *Animation) SetGoPointer(ptr uintptr) {
272272
273273 // This signal is emitted when the animation has been completed, either on its
274274 // own or via calling [method@Animation.skip].
275-func (x *Animation) ConnectDone(cb func(Animation)) {
275+func (x *Animation) ConnectDone(cb func(Animation)) uint32 {
276276 fcb := func(clsPtr uintptr) {
277277 fa := Animation{}
278278 fa.Ptr = clsPtr
@@ -280,7 +280,7 @@ func (x *Animation) ConnectDone(cb func(Animation)) {
280280 cb(fa)
281281
282282 }
283- gobject.ObjectConnect(x.GoPointer(), "signal::done", purego.NewCallback(fcb))
283+ return gobject.SignalConnect(x.GoPointer(), "done", purego.NewCallback(fcb))
284284 }
285285
286286 func init() {
M v4/adw/adw-banner.go +2 -2
@@ -156,7 +156,7 @@ func (c *Banner) SetGoPointer(ptr uintptr) {
156156 // This signal is emitted after the action button has been clicked.
157157 //
158158 // It can be used as an alternative to setting an action.
159-func (x *Banner) ConnectButtonClicked(cb func(Banner)) {
159+func (x *Banner) ConnectButtonClicked(cb func(Banner)) uint32 {
160160 fcb := func(clsPtr uintptr) {
161161 fa := Banner{}
162162 fa.Ptr = clsPtr
@@ -164,7 +164,7 @@ func (x *Banner) ConnectButtonClicked(cb func(Banner)) {
164164 cb(fa)
165165
166166 }
167- gobject.ObjectConnect(x.GoPointer(), "signal::button-clicked", purego.NewCallback(fcb))
167+ return gobject.SignalConnect(x.GoPointer(), "button-clicked", purego.NewCallback(fcb))
168168 }
169169
170170 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/adw/adw-carousel.go +2 -2
@@ -314,7 +314,7 @@ func (c *Carousel) SetGoPointer(ptr uintptr) {
314314 // It can be used to implement "infinite scrolling" by amending the pages
315315 // after every scroll. Note that an empty carousel is indicated by
316316 // `(int)index == -1`.
317-func (x *Carousel) ConnectPageChanged(cb func(Carousel, uint)) {
317+func (x *Carousel) ConnectPageChanged(cb func(Carousel, uint)) uint32 {
318318 fcb := func(clsPtr uintptr, IndexVarp uint) {
319319 fa := Carousel{}
320320 fa.Ptr = clsPtr
@@ -322,7 +322,7 @@ func (x *Carousel) ConnectPageChanged(cb func(Carousel, uint)) {
322322 cb(fa, IndexVarp)
323323
324324 }
325- gobject.ObjectConnect(x.GoPointer(), "signal::page-changed", purego.NewCallback(fcb))
325+ return gobject.SignalConnect(x.GoPointer(), "page-changed", purego.NewCallback(fcb))
326326 }
327327
328328 // Gets the progress @self will snap back to after the gesture is canceled.
M v4/adw/adw-entry-row.go +4 -4
@@ -253,7 +253,7 @@ func (c *EntryRow) SetGoPointer(ptr uintptr) {
253253 // Emitted when the apply button is pressed.
254254 //
255255 // See [property@EntryRow:show-apply-button].
256-func (x *EntryRow) ConnectApply(cb func(EntryRow)) {
256+func (x *EntryRow) ConnectApply(cb func(EntryRow)) uint32 {
257257 fcb := func(clsPtr uintptr) {
258258 fa := EntryRow{}
259259 fa.Ptr = clsPtr
@@ -261,11 +261,11 @@ func (x *EntryRow) ConnectApply(cb func(EntryRow)) {
261261 cb(fa)
262262
263263 }
264- gobject.ObjectConnect(x.GoPointer(), "signal::apply", purego.NewCallback(fcb))
264+ return gobject.SignalConnect(x.GoPointer(), "apply", purego.NewCallback(fcb))
265265 }
266266
267267 // Emitted when the embedded entry is activated.
268-func (x *EntryRow) ConnectEntryActivated(cb func(EntryRow)) {
268+func (x *EntryRow) ConnectEntryActivated(cb func(EntryRow)) uint32 {
269269 fcb := func(clsPtr uintptr) {
270270 fa := EntryRow{}
271271 fa.Ptr = clsPtr
@@ -273,7 +273,7 @@ func (x *EntryRow) ConnectEntryActivated(cb func(EntryRow)) {
273273 cb(fa)
274274
275275 }
276- gobject.ObjectConnect(x.GoPointer(), "signal::entry-activated", purego.NewCallback(fcb))
276+ return gobject.SignalConnect(x.GoPointer(), "entry-activated", purego.NewCallback(fcb))
277277 }
278278
279279 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/adw/adw-message-dialog.go +2 -2
@@ -621,7 +621,7 @@ func (c *MessageDialog) SetGoPointer(ptr uintptr) {
621621 // if the dialog was closed by pressing <kbd>Escape</kbd> or with a system
622622 // action, @response will be set to the value of
623623 // [property@MessageDialog:close-response].
624-func (x *MessageDialog) ConnectResponse(cb func(MessageDialog, string)) {
624+func (x *MessageDialog) ConnectResponse(cb func(MessageDialog, string)) uint32 {
625625 fcb := func(clsPtr uintptr, ResponseVarp string) {
626626 fa := MessageDialog{}
627627 fa.Ptr = clsPtr
@@ -629,7 +629,7 @@ func (x *MessageDialog) ConnectResponse(cb func(MessageDialog, string)) {
629629 cb(fa, ResponseVarp)
630630
631631 }
632- gobject.ObjectConnect(x.GoPointer(), "signal::response", purego.NewCallback(fcb))
632+ return gobject.SignalConnect(x.GoPointer(), "response", purego.NewCallback(fcb))
633633 }
634634
635635 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/adw/adw-split-button.go +4 -4
@@ -313,7 +313,7 @@ func (c *SplitButton) SetGoPointer(ptr uintptr) {
313313 //
314314 // This is an action signal. Applications should never connect to this signal,
315315 // but use the [signal@SplitButton::clicked] signal.
316-func (x *SplitButton) ConnectActivate(cb func(SplitButton)) {
316+func (x *SplitButton) ConnectActivate(cb func(SplitButton)) uint32 {
317317 fcb := func(clsPtr uintptr) {
318318 fa := SplitButton{}
319319 fa.Ptr = clsPtr
@@ -321,11 +321,11 @@ func (x *SplitButton) ConnectActivate(cb func(SplitButton)) {
321321 cb(fa)
322322
323323 }
324- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
324+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
325325 }
326326
327327 // Emitted when the button has been activated (pressed and released).
328-func (x *SplitButton) ConnectClicked(cb func(SplitButton)) {
328+func (x *SplitButton) ConnectClicked(cb func(SplitButton)) uint32 {
329329 fcb := func(clsPtr uintptr) {
330330 fa := SplitButton{}
331331 fa.Ptr = clsPtr
@@ -333,7 +333,7 @@ func (x *SplitButton) ConnectClicked(cb func(SplitButton)) {
333333 cb(fa)
334334
335335 }
336- gobject.ObjectConnect(x.GoPointer(), "signal::clicked", purego.NewCallback(fcb))
336+ return gobject.SignalConnect(x.GoPointer(), "clicked", purego.NewCallback(fcb))
337337 }
338338
339339 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/adw/adw-swipe-tracker.go +8 -8
@@ -168,7 +168,7 @@ func (c *SwipeTracker) SetGoPointer(ptr uintptr) {
168168
169169 // This signal is emitted right before a swipe will be started, after the
170170 // drag threshold has been passed.
171-func (x *SwipeTracker) ConnectBeginSwipe(cb func(SwipeTracker)) {
171+func (x *SwipeTracker) ConnectBeginSwipe(cb func(SwipeTracker)) uint32 {
172172 fcb := func(clsPtr uintptr) {
173173 fa := SwipeTracker{}
174174 fa.Ptr = clsPtr
@@ -176,7 +176,7 @@ func (x *SwipeTracker) ConnectBeginSwipe(cb func(SwipeTracker)) {
176176 cb(fa)
177177
178178 }
179- gobject.ObjectConnect(x.GoPointer(), "signal::begin-swipe", purego.NewCallback(fcb))
179+ return gobject.SignalConnect(x.GoPointer(), "begin-swipe", purego.NewCallback(fcb))
180180 }
181181
182182 // This signal is emitted as soon as the gesture has stopped.
@@ -185,7 +185,7 @@ func (x *SwipeTracker) ConnectBeginSwipe(cb func(SwipeTracker)) {
185185 // value to @to with an animation using @velocity as the initial velocity,
186186 // provided in pixels per second. [class@SpringAnimation] is usually a good
187187 // fit for this.
188-func (x *SwipeTracker) ConnectEndSwipe(cb func(SwipeTracker, float64, float64)) {
188+func (x *SwipeTracker) ConnectEndSwipe(cb func(SwipeTracker, float64, float64)) uint32 {
189189 fcb := func(clsPtr uintptr, VelocityVarp float64, ToVarp float64) {
190190 fa := SwipeTracker{}
191191 fa.Ptr = clsPtr
@@ -193,14 +193,14 @@ func (x *SwipeTracker) ConnectEndSwipe(cb func(SwipeTracker, float64, float64))
193193 cb(fa, VelocityVarp, ToVarp)
194194
195195 }
196- gobject.ObjectConnect(x.GoPointer(), "signal::end-swipe", purego.NewCallback(fcb))
196+ return gobject.SignalConnect(x.GoPointer(), "end-swipe", purego.NewCallback(fcb))
197197 }
198198
199199 // This signal is emitted when a possible swipe is detected.
200200 //
201201 // The @direction value can be used to restrict the swipe to a certain
202202 // direction.
203-func (x *SwipeTracker) ConnectPrepare(cb func(SwipeTracker, NavigationDirection)) {
203+func (x *SwipeTracker) ConnectPrepare(cb func(SwipeTracker, NavigationDirection)) uint32 {
204204 fcb := func(clsPtr uintptr, DirectionVarp NavigationDirection) {
205205 fa := SwipeTracker{}
206206 fa.Ptr = clsPtr
@@ -208,11 +208,11 @@ func (x *SwipeTracker) ConnectPrepare(cb func(SwipeTracker, NavigationDirection)
208208 cb(fa, DirectionVarp)
209209
210210 }
211- gobject.ObjectConnect(x.GoPointer(), "signal::prepare", purego.NewCallback(fcb))
211+ return gobject.SignalConnect(x.GoPointer(), "prepare", purego.NewCallback(fcb))
212212 }
213213
214214 // This signal is emitted every time the progress value changes.
215-func (x *SwipeTracker) ConnectUpdateSwipe(cb func(SwipeTracker, float64)) {
215+func (x *SwipeTracker) ConnectUpdateSwipe(cb func(SwipeTracker, float64)) uint32 {
216216 fcb := func(clsPtr uintptr, ProgressVarp float64) {
217217 fa := SwipeTracker{}
218218 fa.Ptr = clsPtr
@@ -220,7 +220,7 @@ func (x *SwipeTracker) ConnectUpdateSwipe(cb func(SwipeTracker, float64)) {
220220 cb(fa, ProgressVarp)
221221
222222 }
223- gobject.ObjectConnect(x.GoPointer(), "signal::update-swipe", purego.NewCallback(fcb))
223+ return gobject.SignalConnect(x.GoPointer(), "update-swipe", purego.NewCallback(fcb))
224224 }
225225
226226 // Retrieves the orientation of the @orientable.
M v4/adw/adw-tab-bar.go +4 -4
@@ -280,7 +280,7 @@ func (c *TabBar) SetGoPointer(ptr uintptr) {
280280 // [method@TabBar.setup_extra_drop_target].
281281 //
282282 // See [signal@Gtk.DropTarget::drop].
283-func (x *TabBar) ConnectExtraDragDrop(cb func(TabBar, uintptr, uintptr) bool) {
283+func (x *TabBar) ConnectExtraDragDrop(cb func(TabBar, uintptr, uintptr) bool) uint32 {
284284 fcb := func(clsPtr uintptr, PageVarp uintptr, ValueVarp uintptr) bool {
285285 fa := TabBar{}
286286 fa.Ptr = clsPtr
@@ -288,7 +288,7 @@ func (x *TabBar) ConnectExtraDragDrop(cb func(TabBar, uintptr, uintptr) bool) {
288288 return cb(fa, PageVarp, ValueVarp)
289289
290290 }
291- gobject.ObjectConnect(x.GoPointer(), "signal::extra-drag-drop", purego.NewCallback(fcb))
291+ return gobject.SignalConnect(x.GoPointer(), "extra-drag-drop", purego.NewCallback(fcb))
292292 }
293293
294294 // This signal is emitted when the dropped content is preloaded.
@@ -300,7 +300,7 @@ func (x *TabBar) ConnectExtraDragDrop(cb func(TabBar, uintptr, uintptr) bool) {
300300 // [method@TabBar.setup_extra_drop_target].
301301 //
302302 // See [property@Gtk.DropTarget:value].
303-func (x *TabBar) ConnectExtraDragValue(cb func(TabBar, uintptr, uintptr) gdk.DragAction) {
303+func (x *TabBar) ConnectExtraDragValue(cb func(TabBar, uintptr, uintptr) gdk.DragAction) uint32 {
304304 fcb := func(clsPtr uintptr, PageVarp uintptr, ValueVarp uintptr) gdk.DragAction {
305305 fa := TabBar{}
306306 fa.Ptr = clsPtr
@@ -308,7 +308,7 @@ func (x *TabBar) ConnectExtraDragValue(cb func(TabBar, uintptr, uintptr) gdk.Dra
308308 return cb(fa, PageVarp, ValueVarp)
309309
310310 }
311- gobject.ObjectConnect(x.GoPointer(), "signal::extra-drag-value", purego.NewCallback(fcb))
311+ return gobject.SignalConnect(x.GoPointer(), "extra-drag-value", purego.NewCallback(fcb))
312312 }
313313
314314 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/adw/adw-tab-button.go +4 -4
@@ -110,7 +110,7 @@ func (c *TabButton) SetGoPointer(ptr uintptr) {
110110 //
111111 // This is an action signal. Applications should never connect to this signal,
112112 // but use the [signal@TabButton::clicked] signal.
113-func (x *TabButton) ConnectActivate(cb func(TabButton)) {
113+func (x *TabButton) ConnectActivate(cb func(TabButton)) uint32 {
114114 fcb := func(clsPtr uintptr) {
115115 fa := TabButton{}
116116 fa.Ptr = clsPtr
@@ -118,11 +118,11 @@ func (x *TabButton) ConnectActivate(cb func(TabButton)) {
118118 cb(fa)
119119
120120 }
121- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
121+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
122122 }
123123
124124 // Emitted when the button has been activated (pressed and released).
125-func (x *TabButton) ConnectClicked(cb func(TabButton)) {
125+func (x *TabButton) ConnectClicked(cb func(TabButton)) uint32 {
126126 fcb := func(clsPtr uintptr) {
127127 fa := TabButton{}
128128 fa.Ptr = clsPtr
@@ -130,7 +130,7 @@ func (x *TabButton) ConnectClicked(cb func(TabButton)) {
130130 cb(fa)
131131
132132 }
133- gobject.ObjectConnect(x.GoPointer(), "signal::clicked", purego.NewCallback(fcb))
133+ return gobject.SignalConnect(x.GoPointer(), "clicked", purego.NewCallback(fcb))
134134 }
135135
136136 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/adw/adw-tab-overview.go +6 -6
@@ -373,7 +373,7 @@ func (c *TabOverview) SetGoPointer(ptr uintptr) {
373373 //
374374 // The signal handler is expected to create a new page in the corresponding
375375 // [class@TabView] and return it.
376-func (x *TabOverview) ConnectCreateTab(cb func(TabOverview) TabPage) {
376+func (x *TabOverview) ConnectCreateTab(cb func(TabOverview) TabPage) uint32 {
377377 fcb := func(clsPtr uintptr) uintptr {
378378 fa := TabOverview{}
379379 fa.Ptr = clsPtr
@@ -382,7 +382,7 @@ func (x *TabOverview) ConnectCreateTab(cb func(TabOverview) TabPage) {
382382 return CreateTabCls.Ptr
383383
384384 }
385- gobject.ObjectConnect(x.GoPointer(), "signal::create-tab", purego.NewCallback(fcb))
385+ return gobject.SignalConnect(x.GoPointer(), "create-tab", purego.NewCallback(fcb))
386386 }
387387
388388 // This signal is emitted when content is dropped onto a tab.
@@ -391,7 +391,7 @@ func (x *TabOverview) ConnectCreateTab(cb func(TabOverview) TabPage) {
391391 // [method@TabOverview.setup_extra_drop_target].
392392 //
393393 // See [signal@Gtk.DropTarget::drop].
394-func (x *TabOverview) ConnectExtraDragDrop(cb func(TabOverview, uintptr, uintptr) bool) {
394+func (x *TabOverview) ConnectExtraDragDrop(cb func(TabOverview, uintptr, uintptr) bool) uint32 {
395395 fcb := func(clsPtr uintptr, PageVarp uintptr, ValueVarp uintptr) bool {
396396 fa := TabOverview{}
397397 fa.Ptr = clsPtr
@@ -399,7 +399,7 @@ func (x *TabOverview) ConnectExtraDragDrop(cb func(TabOverview, uintptr, uintptr
399399 return cb(fa, PageVarp, ValueVarp)
400400
401401 }
402- gobject.ObjectConnect(x.GoPointer(), "signal::extra-drag-drop", purego.NewCallback(fcb))
402+ return gobject.SignalConnect(x.GoPointer(), "extra-drag-drop", purego.NewCallback(fcb))
403403 }
404404
405405 // This signal is emitted when the dropped content is preloaded.
@@ -411,7 +411,7 @@ func (x *TabOverview) ConnectExtraDragDrop(cb func(TabOverview, uintptr, uintptr
411411 // [method@TabOverview.setup_extra_drop_target].
412412 //
413413 // See [property@Gtk.DropTarget:value].
414-func (x *TabOverview) ConnectExtraDragValue(cb func(TabOverview, uintptr, uintptr) gdk.DragAction) {
414+func (x *TabOverview) ConnectExtraDragValue(cb func(TabOverview, uintptr, uintptr) gdk.DragAction) uint32 {
415415 fcb := func(clsPtr uintptr, PageVarp uintptr, ValueVarp uintptr) gdk.DragAction {
416416 fa := TabOverview{}
417417 fa.Ptr = clsPtr
@@ -419,7 +419,7 @@ func (x *TabOverview) ConnectExtraDragValue(cb func(TabOverview, uintptr, uintpt
419419 return cb(fa, PageVarp, ValueVarp)
420420
421421 }
422- gobject.ObjectConnect(x.GoPointer(), "signal::extra-drag-value", purego.NewCallback(fcb))
422+ return gobject.SignalConnect(x.GoPointer(), "extra-drag-value", purego.NewCallback(fcb))
423423 }
424424
425425 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/adw/adw-tab-view.go +14 -14
@@ -1290,7 +1290,7 @@ func (c *TabView) SetGoPointer(ptr uintptr) {
12901290 //
12911291 // A typical reason to connect to this signal is to show a confirmation dialog
12921292 // for closing a tab.
1293-func (x *TabView) ConnectClosePage(cb func(TabView, uintptr) bool) {
1293+func (x *TabView) ConnectClosePage(cb func(TabView, uintptr) bool) uint32 {
12941294 fcb := func(clsPtr uintptr, PageVarp uintptr) bool {
12951295 fa := TabView{}
12961296 fa.Ptr = clsPtr
@@ -1298,7 +1298,7 @@ func (x *TabView) ConnectClosePage(cb func(TabView, uintptr) bool) {
12981298 return cb(fa, PageVarp)
12991299
13001300 }
1301- gobject.ObjectConnect(x.GoPointer(), "signal::close-page", purego.NewCallback(fcb))
1301+ return gobject.SignalConnect(x.GoPointer(), "close-page", purego.NewCallback(fcb))
13021302 }
13031303
13041304 // Emitted when a tab should be transferred into a new window.
@@ -1307,7 +1307,7 @@ func (x *TabView) ConnectClosePage(cb func(TabView, uintptr) bool) {
13071307 //
13081308 // The signal handler is expected to create a new window, position it as
13091309 // needed and return its `AdwTabView` that the page will be transferred into.
1310-func (x *TabView) ConnectCreateWindow(cb func(TabView) TabView) {
1310+func (x *TabView) ConnectCreateWindow(cb func(TabView) TabView) uint32 {
13111311 fcb := func(clsPtr uintptr) uintptr {
13121312 fa := TabView{}
13131313 fa.Ptr = clsPtr
@@ -1316,14 +1316,14 @@ func (x *TabView) ConnectCreateWindow(cb func(TabView) TabView) {
13161316 return CreateWindowCls.Ptr
13171317
13181318 }
1319- gobject.ObjectConnect(x.GoPointer(), "signal::create-window", purego.NewCallback(fcb))
1319+ return gobject.SignalConnect(x.GoPointer(), "create-window", purego.NewCallback(fcb))
13201320 }
13211321
13221322 // Emitted after the indicator icon on @page has been activated.
13231323 //
13241324 // See [property@TabPage:indicator-icon] and
13251325 // [property@TabPage:indicator-activatable].
1326-func (x *TabView) ConnectIndicatorActivated(cb func(TabView, uintptr)) {
1326+func (x *TabView) ConnectIndicatorActivated(cb func(TabView, uintptr)) uint32 {
13271327 fcb := func(clsPtr uintptr, PageVarp uintptr) {
13281328 fa := TabView{}
13291329 fa.Ptr = clsPtr
@@ -1331,14 +1331,14 @@ func (x *TabView) ConnectIndicatorActivated(cb func(TabView, uintptr)) {
13311331 cb(fa, PageVarp)
13321332
13331333 }
1334- gobject.ObjectConnect(x.GoPointer(), "signal::indicator-activated", purego.NewCallback(fcb))
1334+ return gobject.SignalConnect(x.GoPointer(), "indicator-activated", purego.NewCallback(fcb))
13351335 }
13361336
13371337 // Emitted when a page has been created or transferred to @self.
13381338 //
13391339 // A typical reason to connect to this signal would be to connect to page
13401340 // signals for things such as updating window title.
1341-func (x *TabView) ConnectPageAttached(cb func(TabView, uintptr, int)) {
1341+func (x *TabView) ConnectPageAttached(cb func(TabView, uintptr, int)) uint32 {
13421342 fcb := func(clsPtr uintptr, PageVarp uintptr, PositionVarp int) {
13431343 fa := TabView{}
13441344 fa.Ptr = clsPtr
@@ -1346,7 +1346,7 @@ func (x *TabView) ConnectPageAttached(cb func(TabView, uintptr, int)) {
13461346 cb(fa, PageVarp, PositionVarp)
13471347
13481348 }
1349- gobject.ObjectConnect(x.GoPointer(), "signal::page-attached", purego.NewCallback(fcb))
1349+ return gobject.SignalConnect(x.GoPointer(), "page-attached", purego.NewCallback(fcb))
13501350 }
13511351
13521352 // Emitted when a page has been removed or transferred to another view.
@@ -1358,7 +1358,7 @@ func (x *TabView) ConnectPageAttached(cb func(TabView, uintptr, int)) {
13581358 // this function as the child might merely be moved to another window; use
13591359 // child dispose handler for that or do it in sync with your
13601360 // [method@TabView.close_page_finish] calls.
1361-func (x *TabView) ConnectPageDetached(cb func(TabView, uintptr, int)) {
1361+func (x *TabView) ConnectPageDetached(cb func(TabView, uintptr, int)) uint32 {
13621362 fcb := func(clsPtr uintptr, PageVarp uintptr, PositionVarp int) {
13631363 fa := TabView{}
13641364 fa.Ptr = clsPtr
@@ -1366,11 +1366,11 @@ func (x *TabView) ConnectPageDetached(cb func(TabView, uintptr, int)) {
13661366 cb(fa, PageVarp, PositionVarp)
13671367
13681368 }
1369- gobject.ObjectConnect(x.GoPointer(), "signal::page-detached", purego.NewCallback(fcb))
1369+ return gobject.SignalConnect(x.GoPointer(), "page-detached", purego.NewCallback(fcb))
13701370 }
13711371
13721372 // Emitted after @page has been reordered to @position.
1373-func (x *TabView) ConnectPageReordered(cb func(TabView, uintptr, int)) {
1373+func (x *TabView) ConnectPageReordered(cb func(TabView, uintptr, int)) uint32 {
13741374 fcb := func(clsPtr uintptr, PageVarp uintptr, PositionVarp int) {
13751375 fa := TabView{}
13761376 fa.Ptr = clsPtr
@@ -1378,7 +1378,7 @@ func (x *TabView) ConnectPageReordered(cb func(TabView, uintptr, int)) {
13781378 cb(fa, PageVarp, PositionVarp)
13791379
13801380 }
1381- gobject.ObjectConnect(x.GoPointer(), "signal::page-reordered", purego.NewCallback(fcb))
1381+ return gobject.SignalConnect(x.GoPointer(), "page-reordered", purego.NewCallback(fcb))
13821382 }
13831383
13841384 // Emitted when a context menu is opened or closed for @page.
@@ -1387,7 +1387,7 @@ func (x *TabView) ConnectPageReordered(cb func(TabView, uintptr, int)) {
13871387 //
13881388 // It can be used to set up menu actions before showing the menu, for example
13891389 // disable actions not applicable to @page.
1390-func (x *TabView) ConnectSetupMenu(cb func(TabView, uintptr)) {
1390+func (x *TabView) ConnectSetupMenu(cb func(TabView, uintptr)) uint32 {
13911391 fcb := func(clsPtr uintptr, PageVarp uintptr) {
13921392 fa := TabView{}
13931393 fa.Ptr = clsPtr
@@ -1395,7 +1395,7 @@ func (x *TabView) ConnectSetupMenu(cb func(TabView, uintptr)) {
13951395 cb(fa, PageVarp)
13961396
13971397 }
1398- gobject.ObjectConnect(x.GoPointer(), "signal::setup-menu", purego.NewCallback(fcb))
1398+ return gobject.SignalConnect(x.GoPointer(), "setup-menu", purego.NewCallback(fcb))
13991399 }
14001400
14011401 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/adw/adw-toast.go +4 -4
@@ -434,7 +434,7 @@ func (c *Toast) SetGoPointer(ptr uintptr) {
434434 // Emitted after the button has been clicked.
435435 //
436436 // It can be used as an alternative to setting an action.
437-func (x *Toast) ConnectButtonClicked(cb func(Toast)) {
437+func (x *Toast) ConnectButtonClicked(cb func(Toast)) uint32 {
438438 fcb := func(clsPtr uintptr) {
439439 fa := Toast{}
440440 fa.Ptr = clsPtr
@@ -442,11 +442,11 @@ func (x *Toast) ConnectButtonClicked(cb func(Toast)) {
442442 cb(fa)
443443
444444 }
445- gobject.ObjectConnect(x.GoPointer(), "signal::button-clicked", purego.NewCallback(fcb))
445+ return gobject.SignalConnect(x.GoPointer(), "button-clicked", purego.NewCallback(fcb))
446446 }
447447
448448 // Emitted when the toast has been dismissed.
449-func (x *Toast) ConnectDismissed(cb func(Toast)) {
449+func (x *Toast) ConnectDismissed(cb func(Toast)) uint32 {
450450 fcb := func(clsPtr uintptr) {
451451 fa := Toast{}
452452 fa.Ptr = clsPtr
@@ -454,7 +454,7 @@ func (x *Toast) ConnectDismissed(cb func(Toast)) {
454454 cb(fa)
455455
456456 }
457- gobject.ObjectConnect(x.GoPointer(), "signal::dismissed", purego.NewCallback(fcb))
457+ return gobject.SignalConnect(x.GoPointer(), "dismissed", purego.NewCallback(fcb))
458458 }
459459
460460 func init() {
M v4/gdk/gdkclipboard.go +2 -2
@@ -361,7 +361,7 @@ func (c *Clipboard) SetGoPointer(ptr uintptr) {
361361 }
362362
363363 // Emitted when the clipboard changes ownership.
364-func (x *Clipboard) ConnectChanged(cb func(Clipboard)) {
364+func (x *Clipboard) ConnectChanged(cb func(Clipboard)) uint32 {
365365 fcb := func(clsPtr uintptr) {
366366 fa := Clipboard{}
367367 fa.Ptr = clsPtr
@@ -369,7 +369,7 @@ func (x *Clipboard) ConnectChanged(cb func(Clipboard)) {
369369 cb(fa)
370370
371371 }
372- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
372+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
373373 }
374374
375375 func init() {
M v4/gdk/gdkcontentprovider.go +2 -2
@@ -217,7 +217,7 @@ func (c *ContentProvider) SetGoPointer(ptr uintptr) {
217217 }
218218
219219 // Emitted whenever the content provided by this provider has changed.
220-func (x *ContentProvider) ConnectContentChanged(cb func(ContentProvider)) {
220+func (x *ContentProvider) ConnectContentChanged(cb func(ContentProvider)) uint32 {
221221 fcb := func(clsPtr uintptr) {
222222 fa := ContentProvider{}
223223 fa.Ptr = clsPtr
@@ -225,7 +225,7 @@ func (x *ContentProvider) ConnectContentChanged(cb func(ContentProvider)) {
225225 cb(fa)
226226
227227 }
228- gobject.ObjectConnect(x.GoPointer(), "signal::content-changed", purego.NewCallback(fcb))
228+ return gobject.SignalConnect(x.GoPointer(), "content-changed", purego.NewCallback(fcb))
229229 }
230230
231231 func init() {
M v4/gdk/gdkdevice.go +4 -4
@@ -321,7 +321,7 @@ func (c *Device) SetGoPointer(ptr uintptr) {
321321 // example, user switches from the USB mouse to a tablet); in
322322 // that case the logical device will change to reflect the axes
323323 // and keys on the new physical device.
324-func (x *Device) ConnectChanged(cb func(Device)) {
324+func (x *Device) ConnectChanged(cb func(Device)) uint32 {
325325 fcb := func(clsPtr uintptr) {
326326 fa := Device{}
327327 fa.Ptr = clsPtr
@@ -329,11 +329,11 @@ func (x *Device) ConnectChanged(cb func(Device)) {
329329 cb(fa)
330330
331331 }
332- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
332+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
333333 }
334334
335335 // Emitted on pen/eraser devices whenever tools enter or leave proximity.
336-func (x *Device) ConnectToolChanged(cb func(Device, uintptr)) {
336+func (x *Device) ConnectToolChanged(cb func(Device, uintptr)) uint32 {
337337 fcb := func(clsPtr uintptr, ToolVarp uintptr) {
338338 fa := Device{}
339339 fa.Ptr = clsPtr
@@ -341,7 +341,7 @@ func (x *Device) ConnectToolChanged(cb func(Device, uintptr)) {
341341 cb(fa, ToolVarp)
342342
343343 }
344- gobject.ObjectConnect(x.GoPointer(), "signal::tool-changed", purego.NewCallback(fcb))
344+ return gobject.SignalConnect(x.GoPointer(), "tool-changed", purego.NewCallback(fcb))
345345 }
346346
347347 func init() {
M v4/gdk/gdkdisplay.go +10 -10
@@ -474,7 +474,7 @@ func (c *Display) SetGoPointer(ptr uintptr) {
474474 }
475475
476476 // Emitted when the connection to the windowing system for @display is closed.
477-func (x *Display) ConnectClosed(cb func(Display, bool)) {
477+func (x *Display) ConnectClosed(cb func(Display, bool)) uint32 {
478478 fcb := func(clsPtr uintptr, IsErrorVarp bool) {
479479 fa := Display{}
480480 fa.Ptr = clsPtr
@@ -482,11 +482,11 @@ func (x *Display) ConnectClosed(cb func(Display, bool)) {
482482 cb(fa, IsErrorVarp)
483483
484484 }
485- gobject.ObjectConnect(x.GoPointer(), "signal::closed", purego.NewCallback(fcb))
485+ return gobject.SignalConnect(x.GoPointer(), "closed", purego.NewCallback(fcb))
486486 }
487487
488488 // Emitted when the connection to the windowing system for @display is opened.
489-func (x *Display) ConnectOpened(cb func(Display)) {
489+func (x *Display) ConnectOpened(cb func(Display)) uint32 {
490490 fcb := func(clsPtr uintptr) {
491491 fa := Display{}
492492 fa.Ptr = clsPtr
@@ -494,11 +494,11 @@ func (x *Display) ConnectOpened(cb func(Display)) {
494494 cb(fa)
495495
496496 }
497- gobject.ObjectConnect(x.GoPointer(), "signal::opened", purego.NewCallback(fcb))
497+ return gobject.SignalConnect(x.GoPointer(), "opened", purego.NewCallback(fcb))
498498 }
499499
500500 // Emitted whenever a new seat is made known to the windowing system.
501-func (x *Display) ConnectSeatAdded(cb func(Display, uintptr)) {
501+func (x *Display) ConnectSeatAdded(cb func(Display, uintptr)) uint32 {
502502 fcb := func(clsPtr uintptr, SeatVarp uintptr) {
503503 fa := Display{}
504504 fa.Ptr = clsPtr
@@ -506,11 +506,11 @@ func (x *Display) ConnectSeatAdded(cb func(Display, uintptr)) {
506506 cb(fa, SeatVarp)
507507
508508 }
509- gobject.ObjectConnect(x.GoPointer(), "signal::seat-added", purego.NewCallback(fcb))
509+ return gobject.SignalConnect(x.GoPointer(), "seat-added", purego.NewCallback(fcb))
510510 }
511511
512512 // Emitted whenever a seat is removed by the windowing system.
513-func (x *Display) ConnectSeatRemoved(cb func(Display, uintptr)) {
513+func (x *Display) ConnectSeatRemoved(cb func(Display, uintptr)) uint32 {
514514 fcb := func(clsPtr uintptr, SeatVarp uintptr) {
515515 fa := Display{}
516516 fa.Ptr = clsPtr
@@ -518,11 +518,11 @@ func (x *Display) ConnectSeatRemoved(cb func(Display, uintptr)) {
518518 cb(fa, SeatVarp)
519519
520520 }
521- gobject.ObjectConnect(x.GoPointer(), "signal::seat-removed", purego.NewCallback(fcb))
521+ return gobject.SignalConnect(x.GoPointer(), "seat-removed", purego.NewCallback(fcb))
522522 }
523523
524524 // Emitted whenever a setting changes its value.
525-func (x *Display) ConnectSettingChanged(cb func(Display, string)) {
525+func (x *Display) ConnectSettingChanged(cb func(Display, string)) uint32 {
526526 fcb := func(clsPtr uintptr, SettingVarp string) {
527527 fa := Display{}
528528 fa.Ptr = clsPtr
@@ -530,7 +530,7 @@ func (x *Display) ConnectSettingChanged(cb func(Display, string)) {
530530 cb(fa, SettingVarp)
531531
532532 }
533- gobject.ObjectConnect(x.GoPointer(), "signal::setting-changed", purego.NewCallback(fcb))
533+ return gobject.SignalConnect(x.GoPointer(), "setting-changed", purego.NewCallback(fcb))
534534 }
535535
536536 func init() {
M v4/gdk/gdkdisplaymanager.go +2 -2
@@ -168,7 +168,7 @@ func (c *DisplayManager) SetGoPointer(ptr uintptr) {
168168 }
169169
170170 // Emitted when a display is opened.
171-func (x *DisplayManager) ConnectDisplayOpened(cb func(DisplayManager, uintptr)) {
171+func (x *DisplayManager) ConnectDisplayOpened(cb func(DisplayManager, uintptr)) uint32 {
172172 fcb := func(clsPtr uintptr, DisplayVarp uintptr) {
173173 fa := DisplayManager{}
174174 fa.Ptr = clsPtr
@@ -176,7 +176,7 @@ func (x *DisplayManager) ConnectDisplayOpened(cb func(DisplayManager, uintptr))
176176 cb(fa, DisplayVarp)
177177
178178 }
179- gobject.ObjectConnect(x.GoPointer(), "signal::display-opened", purego.NewCallback(fcb))
179+ return gobject.SignalConnect(x.GoPointer(), "display-opened", purego.NewCallback(fcb))
180180 }
181181
182182 func init() {
M v4/gdk/gdkdrag.go +6 -6
@@ -211,7 +211,7 @@ func (c *Drag) SetGoPointer(ptr uintptr) {
211211 }
212212
213213 // Emitted when the drag operation is cancelled.
214-func (x *Drag) ConnectCancel(cb func(Drag, DragCancelReason)) {
214+func (x *Drag) ConnectCancel(cb func(Drag, DragCancelReason)) uint32 {
215215 fcb := func(clsPtr uintptr, ReasonVarp DragCancelReason) {
216216 fa := Drag{}
217217 fa.Ptr = clsPtr
@@ -219,13 +219,13 @@ func (x *Drag) ConnectCancel(cb func(Drag, DragCancelReason)) {
219219 cb(fa, ReasonVarp)
220220
221221 }
222- gobject.ObjectConnect(x.GoPointer(), "signal::cancel", purego.NewCallback(fcb))
222+ return gobject.SignalConnect(x.GoPointer(), "cancel", purego.NewCallback(fcb))
223223 }
224224
225225 // Emitted when the destination side has finished reading all data.
226226 //
227227 // The drag object can now free all miscellaneous data.
228-func (x *Drag) ConnectDndFinished(cb func(Drag)) {
228+func (x *Drag) ConnectDndFinished(cb func(Drag)) uint32 {
229229 fcb := func(clsPtr uintptr) {
230230 fa := Drag{}
231231 fa.Ptr = clsPtr
@@ -233,11 +233,11 @@ func (x *Drag) ConnectDndFinished(cb func(Drag)) {
233233 cb(fa)
234234
235235 }
236- gobject.ObjectConnect(x.GoPointer(), "signal::dnd-finished", purego.NewCallback(fcb))
236+ return gobject.SignalConnect(x.GoPointer(), "dnd-finished", purego.NewCallback(fcb))
237237 }
238238
239239 // Emitted when the drop operation is performed on an accepting client.
240-func (x *Drag) ConnectDropPerformed(cb func(Drag)) {
240+func (x *Drag) ConnectDropPerformed(cb func(Drag)) uint32 {
241241 fcb := func(clsPtr uintptr) {
242242 fa := Drag{}
243243 fa.Ptr = clsPtr
@@ -245,7 +245,7 @@ func (x *Drag) ConnectDropPerformed(cb func(Drag)) {
245245 cb(fa)
246246
247247 }
248- gobject.ObjectConnect(x.GoPointer(), "signal::drop-performed", purego.NewCallback(fcb))
248+ return gobject.SignalConnect(x.GoPointer(), "drop-performed", purego.NewCallback(fcb))
249249 }
250250
251251 func init() {
M v4/gdk/gdkframeclock.go +14 -14
@@ -226,7 +226,7 @@ func (c *FrameClock) SetGoPointer(ptr uintptr) {
226226 // This signal ends processing of the frame.
227227 //
228228 // Applications should generally not handle this signal.
229-func (x *FrameClock) ConnectAfterPaint(cb func(FrameClock)) {
229+func (x *FrameClock) ConnectAfterPaint(cb func(FrameClock)) uint32 {
230230 fcb := func(clsPtr uintptr) {
231231 fa := FrameClock{}
232232 fa.Ptr = clsPtr
@@ -234,13 +234,13 @@ func (x *FrameClock) ConnectAfterPaint(cb func(FrameClock)) {
234234 cb(fa)
235235
236236 }
237- gobject.ObjectConnect(x.GoPointer(), "signal::after-paint", purego.NewCallback(fcb))
237+ return gobject.SignalConnect(x.GoPointer(), "after-paint", purego.NewCallback(fcb))
238238 }
239239
240240 // Begins processing of the frame.
241241 //
242242 // Applications should generally not handle this signal.
243-func (x *FrameClock) ConnectBeforePaint(cb func(FrameClock)) {
243+func (x *FrameClock) ConnectBeforePaint(cb func(FrameClock)) uint32 {
244244 fcb := func(clsPtr uintptr) {
245245 fa := FrameClock{}
246246 fa.Ptr = clsPtr
@@ -248,14 +248,14 @@ func (x *FrameClock) ConnectBeforePaint(cb func(FrameClock)) {
248248 cb(fa)
249249
250250 }
251- gobject.ObjectConnect(x.GoPointer(), "signal::before-paint", purego.NewCallback(fcb))
251+ return gobject.SignalConnect(x.GoPointer(), "before-paint", purego.NewCallback(fcb))
252252 }
253253
254254 // Used to flush pending motion events that are being batched up and
255255 // compressed together.
256256 //
257257 // Applications should not handle this signal.
258-func (x *FrameClock) ConnectFlushEvents(cb func(FrameClock)) {
258+func (x *FrameClock) ConnectFlushEvents(cb func(FrameClock)) uint32 {
259259 fcb := func(clsPtr uintptr) {
260260 fa := FrameClock{}
261261 fa.Ptr = clsPtr
@@ -263,7 +263,7 @@ func (x *FrameClock) ConnectFlushEvents(cb func(FrameClock)) {
263263 cb(fa)
264264
265265 }
266- gobject.ObjectConnect(x.GoPointer(), "signal::flush-events", purego.NewCallback(fcb))
266+ return gobject.SignalConnect(x.GoPointer(), "flush-events", purego.NewCallback(fcb))
267267 }
268268
269269 // Emitted as the second step of toolkit and application processing
@@ -271,7 +271,7 @@ func (x *FrameClock) ConnectFlushEvents(cb func(FrameClock)) {
271271 //
272272 // Any work to update sizes and positions of application elements
273273 // should be performed. GTK normally handles this internally.
274-func (x *FrameClock) ConnectLayout(cb func(FrameClock)) {
274+func (x *FrameClock) ConnectLayout(cb func(FrameClock)) uint32 {
275275 fcb := func(clsPtr uintptr) {
276276 fa := FrameClock{}
277277 fa.Ptr = clsPtr
@@ -279,7 +279,7 @@ func (x *FrameClock) ConnectLayout(cb func(FrameClock)) {
279279 cb(fa)
280280
281281 }
282- gobject.ObjectConnect(x.GoPointer(), "signal::layout", purego.NewCallback(fcb))
282+ return gobject.SignalConnect(x.GoPointer(), "layout", purego.NewCallback(fcb))
283283 }
284284
285285 // Emitted as the third step of toolkit and application processing
@@ -288,7 +288,7 @@ func (x *FrameClock) ConnectLayout(cb func(FrameClock)) {
288288 // The frame is repainted. GDK normally handles this internally and
289289 // emits [signal@Gdk.Surface::render] signals which are turned into
290290 // [signal@Gtk.Widget::snapshot] signals by GTK.
291-func (x *FrameClock) ConnectPaint(cb func(FrameClock)) {
291+func (x *FrameClock) ConnectPaint(cb func(FrameClock)) uint32 {
292292 fcb := func(clsPtr uintptr) {
293293 fa := FrameClock{}
294294 fa.Ptr = clsPtr
@@ -296,14 +296,14 @@ func (x *FrameClock) ConnectPaint(cb func(FrameClock)) {
296296 cb(fa)
297297
298298 }
299- gobject.ObjectConnect(x.GoPointer(), "signal::paint", purego.NewCallback(fcb))
299+ return gobject.SignalConnect(x.GoPointer(), "paint", purego.NewCallback(fcb))
300300 }
301301
302302 // Emitted after processing of the frame is finished.
303303 //
304304 // This signal is handled internally by GTK to resume normal
305305 // event processing. Applications should not handle this signal.
306-func (x *FrameClock) ConnectResumeEvents(cb func(FrameClock)) {
306+func (x *FrameClock) ConnectResumeEvents(cb func(FrameClock)) uint32 {
307307 fcb := func(clsPtr uintptr) {
308308 fa := FrameClock{}
309309 fa.Ptr = clsPtr
@@ -311,7 +311,7 @@ func (x *FrameClock) ConnectResumeEvents(cb func(FrameClock)) {
311311 cb(fa)
312312
313313 }
314- gobject.ObjectConnect(x.GoPointer(), "signal::resume-events", purego.NewCallback(fcb))
314+ return gobject.SignalConnect(x.GoPointer(), "resume-events", purego.NewCallback(fcb))
315315 }
316316
317317 // Emitted as the first step of toolkit and application processing
@@ -320,7 +320,7 @@ func (x *FrameClock) ConnectResumeEvents(cb func(FrameClock)) {
320320 // Animations should be updated using [method@Gdk.FrameClock.get_frame_time].
321321 // Applications can connect directly to this signal, or use
322322 // [method@Gtk.Widget.add_tick_callback] as a more convenient interface.
323-func (x *FrameClock) ConnectUpdate(cb func(FrameClock)) {
323+func (x *FrameClock) ConnectUpdate(cb func(FrameClock)) uint32 {
324324 fcb := func(clsPtr uintptr) {
325325 fa := FrameClock{}
326326 fa.Ptr = clsPtr
@@ -328,7 +328,7 @@ func (x *FrameClock) ConnectUpdate(cb func(FrameClock)) {
328328 cb(fa)
329329
330330 }
331- gobject.ObjectConnect(x.GoPointer(), "signal::update", purego.NewCallback(fcb))
331+ return gobject.SignalConnect(x.GoPointer(), "update", purego.NewCallback(fcb))
332332 }
333333
334334 func init() {
M v4/gdk/gdkmonitor.go +2 -2
@@ -189,7 +189,7 @@ func (c *Monitor) SetGoPointer(ptr uintptr) {
189189 }
190190
191191 // Emitted when the output represented by @monitor gets disconnected.
192-func (x *Monitor) ConnectInvalidate(cb func(Monitor)) {
192+func (x *Monitor) ConnectInvalidate(cb func(Monitor)) uint32 {
193193 fcb := func(clsPtr uintptr) {
194194 fa := Monitor{}
195195 fa.Ptr = clsPtr
@@ -197,7 +197,7 @@ func (x *Monitor) ConnectInvalidate(cb func(Monitor)) {
197197 cb(fa)
198198
199199 }
200- gobject.ObjectConnect(x.GoPointer(), "signal::invalidate", purego.NewCallback(fcb))
200+ return gobject.SignalConnect(x.GoPointer(), "invalidate", purego.NewCallback(fcb))
201201 }
202202
203203 func init() {
M v4/gdk/gdkseat.go +8 -8
@@ -130,7 +130,7 @@ func (c *Seat) SetGoPointer(ptr uintptr) {
130130 }
131131
132132 // Emitted when a new input device is related to this seat.
133-func (x *Seat) ConnectDeviceAdded(cb func(Seat, uintptr)) {
133+func (x *Seat) ConnectDeviceAdded(cb func(Seat, uintptr)) uint32 {
134134 fcb := func(clsPtr uintptr, DeviceVarp uintptr) {
135135 fa := Seat{}
136136 fa.Ptr = clsPtr
@@ -138,11 +138,11 @@ func (x *Seat) ConnectDeviceAdded(cb func(Seat, uintptr)) {
138138 cb(fa, DeviceVarp)
139139
140140 }
141- gobject.ObjectConnect(x.GoPointer(), "signal::device-added", purego.NewCallback(fcb))
141+ return gobject.SignalConnect(x.GoPointer(), "device-added", purego.NewCallback(fcb))
142142 }
143143
144144 // Emitted when an input device is removed (e.g. unplugged).
145-func (x *Seat) ConnectDeviceRemoved(cb func(Seat, uintptr)) {
145+func (x *Seat) ConnectDeviceRemoved(cb func(Seat, uintptr)) uint32 {
146146 fcb := func(clsPtr uintptr, DeviceVarp uintptr) {
147147 fa := Seat{}
148148 fa.Ptr = clsPtr
@@ -150,7 +150,7 @@ func (x *Seat) ConnectDeviceRemoved(cb func(Seat, uintptr)) {
150150 cb(fa, DeviceVarp)
151151
152152 }
153- gobject.ObjectConnect(x.GoPointer(), "signal::device-removed", purego.NewCallback(fcb))
153+ return gobject.SignalConnect(x.GoPointer(), "device-removed", purego.NewCallback(fcb))
154154 }
155155
156156 // Emitted whenever a new tool is made known to the seat.
@@ -160,7 +160,7 @@ func (x *Seat) ConnectDeviceRemoved(cb func(Seat, uintptr)) {
160160 // [signal@Gdk.Device::tool-changed] signal accordingly.
161161 //
162162 // A same tool may be used by several devices.
163-func (x *Seat) ConnectToolAdded(cb func(Seat, uintptr)) {
163+func (x *Seat) ConnectToolAdded(cb func(Seat, uintptr)) uint32 {
164164 fcb := func(clsPtr uintptr, ToolVarp uintptr) {
165165 fa := Seat{}
166166 fa.Ptr = clsPtr
@@ -168,11 +168,11 @@ func (x *Seat) ConnectToolAdded(cb func(Seat, uintptr)) {
168168 cb(fa, ToolVarp)
169169
170170 }
171- gobject.ObjectConnect(x.GoPointer(), "signal::tool-added", purego.NewCallback(fcb))
171+ return gobject.SignalConnect(x.GoPointer(), "tool-added", purego.NewCallback(fcb))
172172 }
173173
174174 // Emitted whenever a tool is no longer known to this @seat.
175-func (x *Seat) ConnectToolRemoved(cb func(Seat, uintptr)) {
175+func (x *Seat) ConnectToolRemoved(cb func(Seat, uintptr)) uint32 {
176176 fcb := func(clsPtr uintptr, ToolVarp uintptr) {
177177 fa := Seat{}
178178 fa.Ptr = clsPtr
@@ -180,7 +180,7 @@ func (x *Seat) ConnectToolRemoved(cb func(Seat, uintptr)) {
180180 cb(fa, ToolVarp)
181181
182182 }
183- gobject.ObjectConnect(x.GoPointer(), "signal::tool-removed", purego.NewCallback(fcb))
183+ return gobject.SignalConnect(x.GoPointer(), "tool-removed", purego.NewCallback(fcb))
184184 }
185185
186186 func init() {
M v4/gdk/gdksurface.go +10 -10
@@ -477,7 +477,7 @@ func (c *Surface) SetGoPointer(ptr uintptr) {
477477 }
478478
479479 // Emitted when @surface starts being present on the monitor.
480-func (x *Surface) ConnectEnterMonitor(cb func(Surface, uintptr)) {
480+func (x *Surface) ConnectEnterMonitor(cb func(Surface, uintptr)) uint32 {
481481 fcb := func(clsPtr uintptr, MonitorVarp uintptr) {
482482 fa := Surface{}
483483 fa.Ptr = clsPtr
@@ -485,11 +485,11 @@ func (x *Surface) ConnectEnterMonitor(cb func(Surface, uintptr)) {
485485 cb(fa, MonitorVarp)
486486
487487 }
488- gobject.ObjectConnect(x.GoPointer(), "signal::enter-monitor", purego.NewCallback(fcb))
488+ return gobject.SignalConnect(x.GoPointer(), "enter-monitor", purego.NewCallback(fcb))
489489 }
490490
491491 // Emitted when GDK receives an input event for @surface.
492-func (x *Surface) ConnectEvent(cb func(Surface, *Event) bool) {
492+func (x *Surface) ConnectEvent(cb func(Surface, *Event) bool) uint32 {
493493 fcb := func(clsPtr uintptr, EventVarp uintptr) bool {
494494 fa := Surface{}
495495 fa.Ptr = clsPtr
@@ -497,7 +497,7 @@ func (x *Surface) ConnectEvent(cb func(Surface, *Event) bool) {
497497 return cb(fa, EventNewFromInternalPtr(EventVarp))
498498
499499 }
500- gobject.ObjectConnect(x.GoPointer(), "signal::event", purego.NewCallback(fcb))
500+ return gobject.SignalConnect(x.GoPointer(), "event", purego.NewCallback(fcb))
501501 }
502502
503503 // Emitted when the size of @surface is changed, or when relayout should
@@ -505,7 +505,7 @@ func (x *Surface) ConnectEvent(cb func(Surface, *Event) bool) {
505505 //
506506 // Surface size is reported in ”application pixels”, not
507507 // ”device pixels” (see gdk_surface_get_scale_factor()).
508-func (x *Surface) ConnectLayout(cb func(Surface, int, int)) {
508+func (x *Surface) ConnectLayout(cb func(Surface, int, int)) uint32 {
509509 fcb := func(clsPtr uintptr, WidthVarp int, HeightVarp int) {
510510 fa := Surface{}
511511 fa.Ptr = clsPtr
@@ -513,11 +513,11 @@ func (x *Surface) ConnectLayout(cb func(Surface, int, int)) {
513513 cb(fa, WidthVarp, HeightVarp)
514514
515515 }
516- gobject.ObjectConnect(x.GoPointer(), "signal::layout", purego.NewCallback(fcb))
516+ return gobject.SignalConnect(x.GoPointer(), "layout", purego.NewCallback(fcb))
517517 }
518518
519519 // Emitted when @surface stops being present on the monitor.
520-func (x *Surface) ConnectLeaveMonitor(cb func(Surface, uintptr)) {
520+func (x *Surface) ConnectLeaveMonitor(cb func(Surface, uintptr)) uint32 {
521521 fcb := func(clsPtr uintptr, MonitorVarp uintptr) {
522522 fa := Surface{}
523523 fa.Ptr = clsPtr
@@ -525,11 +525,11 @@ func (x *Surface) ConnectLeaveMonitor(cb func(Surface, uintptr)) {
525525 cb(fa, MonitorVarp)
526526
527527 }
528- gobject.ObjectConnect(x.GoPointer(), "signal::leave-monitor", purego.NewCallback(fcb))
528+ return gobject.SignalConnect(x.GoPointer(), "leave-monitor", purego.NewCallback(fcb))
529529 }
530530
531531 // Emitted when part of the surface needs to be redrawn.
532-func (x *Surface) ConnectRender(cb func(Surface, uintptr) bool) {
532+func (x *Surface) ConnectRender(cb func(Surface, uintptr) bool) uint32 {
533533 fcb := func(clsPtr uintptr, RegionVarp uintptr) bool {
534534 fa := Surface{}
535535 fa.Ptr = clsPtr
@@ -537,7 +537,7 @@ func (x *Surface) ConnectRender(cb func(Surface, uintptr) bool) {
537537 return cb(fa, RegionVarp)
538538
539539 }
540- gobject.ObjectConnect(x.GoPointer(), "signal::render", purego.NewCallback(fcb))
540+ return gobject.SignalConnect(x.GoPointer(), "render", purego.NewCallback(fcb))
541541 }
542542
543543 func init() {
M v4/gdk/gdkvulkancontext.go +2 -2
@@ -39,7 +39,7 @@ func (c *VulkanContext) SetGoPointer(ptr uintptr) {
3939 //
4040 // Usually this means that the swapchain had to be recreated,
4141 // for example in response to a change of the surface size.
42-func (x *VulkanContext) ConnectImagesUpdated(cb func(VulkanContext)) {
42+func (x *VulkanContext) ConnectImagesUpdated(cb func(VulkanContext)) uint32 {
4343 fcb := func(clsPtr uintptr) {
4444 fa := VulkanContext{}
4545 fa.Ptr = clsPtr
@@ -47,7 +47,7 @@ func (x *VulkanContext) ConnectImagesUpdated(cb func(VulkanContext)) {
4747 cb(fa)
4848
4949 }
50- gobject.ObjectConnect(x.GoPointer(), "signal::images-updated", purego.NewCallback(fcb))
50+ return gobject.SignalConnect(x.GoPointer(), "images-updated", purego.NewCallback(fcb))
5151 }
5252
5353 // Initializes the object implementing the interface.
M v4/gdkpixbuf/gdk-pixbuf-loader.go +8 -8
@@ -303,7 +303,7 @@ func (c *PixbufLoader) SetGoPointer(ptr uintptr) {
303303 // After this signal is emitted, applications can call
304304 // gdk_pixbuf_loader_get_pixbuf() to fetch the partially-loaded
305305 // pixbuf.
306-func (x *PixbufLoader) ConnectAreaPrepared(cb func(PixbufLoader)) {
306+func (x *PixbufLoader) ConnectAreaPrepared(cb func(PixbufLoader)) uint32 {
307307 fcb := func(clsPtr uintptr) {
308308 fa := PixbufLoader{}
309309 fa.Ptr = clsPtr
@@ -311,7 +311,7 @@ func (x *PixbufLoader) ConnectAreaPrepared(cb func(PixbufLoader)) {
311311 cb(fa)
312312
313313 }
314- gobject.ObjectConnect(x.GoPointer(), "signal::area-prepared", purego.NewCallback(fcb))
314+ return gobject.SignalConnect(x.GoPointer(), "area-prepared", purego.NewCallback(fcb))
315315 }
316316
317317 // This signal is emitted when a significant area of the image being
@@ -322,7 +322,7 @@ func (x *PixbufLoader) ConnectAreaPrepared(cb func(PixbufLoader)) {
322322 //
323323 // Applications can use this signal to know when to repaint
324324 // areas of an image that is being loaded.
325-func (x *PixbufLoader) ConnectAreaUpdated(cb func(PixbufLoader, int, int, int, int)) {
325+func (x *PixbufLoader) ConnectAreaUpdated(cb func(PixbufLoader, int, int, int, int)) uint32 {
326326 fcb := func(clsPtr uintptr, XVarp int, YVarp int, WidthVarp int, HeightVarp int) {
327327 fa := PixbufLoader{}
328328 fa.Ptr = clsPtr
@@ -330,7 +330,7 @@ func (x *PixbufLoader) ConnectAreaUpdated(cb func(PixbufLoader, int, int, int, i
330330 cb(fa, XVarp, YVarp, WidthVarp, HeightVarp)
331331
332332 }
333- gobject.ObjectConnect(x.GoPointer(), "signal::area-updated", purego.NewCallback(fcb))
333+ return gobject.SignalConnect(x.GoPointer(), "area-updated", purego.NewCallback(fcb))
334334 }
335335
336336 // This signal is emitted when gdk_pixbuf_loader_close() is called.
@@ -338,7 +338,7 @@ func (x *PixbufLoader) ConnectAreaUpdated(cb func(PixbufLoader, int, int, int, i
338338 // It can be used by different parts of an application to receive
339339 // notification when an image loader is closed by the code that
340340 // drives it.
341-func (x *PixbufLoader) ConnectClosed(cb func(PixbufLoader)) {
341+func (x *PixbufLoader) ConnectClosed(cb func(PixbufLoader)) uint32 {
342342 fcb := func(clsPtr uintptr) {
343343 fa := PixbufLoader{}
344344 fa.Ptr = clsPtr
@@ -346,7 +346,7 @@ func (x *PixbufLoader) ConnectClosed(cb func(PixbufLoader)) {
346346 cb(fa)
347347
348348 }
349- gobject.ObjectConnect(x.GoPointer(), "signal::closed", purego.NewCallback(fcb))
349+ return gobject.SignalConnect(x.GoPointer(), "closed", purego.NewCallback(fcb))
350350 }
351351
352352 // This signal is emitted when the pixbuf loader has been fed the
@@ -356,7 +356,7 @@ func (x *PixbufLoader) ConnectClosed(cb func(PixbufLoader)) {
356356 // Applications can call gdk_pixbuf_loader_set_size() in response
357357 // to this signal to set the desired size to which the image
358358 // should be scaled.
359-func (x *PixbufLoader) ConnectSizePrepared(cb func(PixbufLoader, int, int)) {
359+func (x *PixbufLoader) ConnectSizePrepared(cb func(PixbufLoader, int, int)) uint32 {
360360 fcb := func(clsPtr uintptr, WidthVarp int, HeightVarp int) {
361361 fa := PixbufLoader{}
362362 fa.Ptr = clsPtr
@@ -364,7 +364,7 @@ func (x *PixbufLoader) ConnectSizePrepared(cb func(PixbufLoader, int, int)) {
364364 cb(fa, WidthVarp, HeightVarp)
365365
366366 }
367- gobject.ObjectConnect(x.GoPointer(), "signal::size-prepared", purego.NewCallback(fcb))
367+ return gobject.SignalConnect(x.GoPointer(), "size-prepared", purego.NewCallback(fcb))
368368 }
369369
370370 func init() {
M v4/gio/gappinfo.go +6 -6
@@ -722,7 +722,7 @@ func (c *AppLaunchContext) SetGoPointer(ptr uintptr) {
722722 // The #GAppLaunchContext::launch-failed signal is emitted when a #GAppInfo launch
723723 // fails. The startup notification id is provided, so that the launcher
724724 // can cancel the startup notification.
725-func (x *AppLaunchContext) ConnectLaunchFailed(cb func(AppLaunchContext, string)) {
725+func (x *AppLaunchContext) ConnectLaunchFailed(cb func(AppLaunchContext, string)) uint32 {
726726 fcb := func(clsPtr uintptr, StartupNotifyIdVarp string) {
727727 fa := AppLaunchContext{}
728728 fa.Ptr = clsPtr
@@ -730,7 +730,7 @@ func (x *AppLaunchContext) ConnectLaunchFailed(cb func(AppLaunchContext, string)
730730 cb(fa, StartupNotifyIdVarp)
731731
732732 }
733- gobject.ObjectConnect(x.GoPointer(), "signal::launch-failed", purego.NewCallback(fcb))
733+ return gobject.SignalConnect(x.GoPointer(), "launch-failed", purego.NewCallback(fcb))
734734 }
735735
736736 // The #GAppLaunchContext::launch-started signal is emitted when a #GAppInfo is
@@ -747,7 +747,7 @@ func (x *AppLaunchContext) ConnectLaunchFailed(cb func(AppLaunchContext, string)
747747 //
748748 // It is guaranteed that this signal is followed by either a #GAppLaunchContext::launched or
749749 // #GAppLaunchContext::launch-failed signal.
750-func (x *AppLaunchContext) ConnectLaunchStarted(cb func(AppLaunchContext, uintptr, uintptr)) {
750+func (x *AppLaunchContext) ConnectLaunchStarted(cb func(AppLaunchContext, uintptr, uintptr)) uint32 {
751751 fcb := func(clsPtr uintptr, InfoVarp uintptr, PlatformDataVarp uintptr) {
752752 fa := AppLaunchContext{}
753753 fa.Ptr = clsPtr
@@ -755,7 +755,7 @@ func (x *AppLaunchContext) ConnectLaunchStarted(cb func(AppLaunchContext, uintpt
755755 cb(fa, InfoVarp, PlatformDataVarp)
756756
757757 }
758- gobject.ObjectConnect(x.GoPointer(), "signal::launch-started", purego.NewCallback(fcb))
758+ return gobject.SignalConnect(x.GoPointer(), "launch-started", purego.NewCallback(fcb))
759759 }
760760
761761 // The #GAppLaunchContext::launched signal is emitted when a #GAppInfo is successfully
@@ -767,7 +767,7 @@ func (x *AppLaunchContext) ConnectLaunchStarted(cb func(AppLaunchContext, uintpt
767767 // Since 2.72 the `pid` may be 0 if the process id wasn't known (for
768768 // example if the process was launched via D-Bus). The `pid` may not be
769769 // set at all in subsequent releases.
770-func (x *AppLaunchContext) ConnectLaunched(cb func(AppLaunchContext, uintptr, uintptr)) {
770+func (x *AppLaunchContext) ConnectLaunched(cb func(AppLaunchContext, uintptr, uintptr)) uint32 {
771771 fcb := func(clsPtr uintptr, InfoVarp uintptr, PlatformDataVarp uintptr) {
772772 fa := AppLaunchContext{}
773773 fa.Ptr = clsPtr
@@ -775,7 +775,7 @@ func (x *AppLaunchContext) ConnectLaunched(cb func(AppLaunchContext, uintptr, ui
775775 cb(fa, InfoVarp, PlatformDataVarp)
776776
777777 }
778- gobject.ObjectConnect(x.GoPointer(), "signal::launched", purego.NewCallback(fcb))
778+ return gobject.SignalConnect(x.GoPointer(), "launched", purego.NewCallback(fcb))
779779 }
780780
781781 func init() {
M v4/gio/gapplication.go +14 -14
@@ -897,7 +897,7 @@ func (c *Application) SetGoPointer(ptr uintptr) {
897897
898898 // The ::activate signal is emitted on the primary instance when an
899899 // activation occurs. See g_application_activate().
900-func (x *Application) ConnectActivate(cb func(Application)) {
900+func (x *Application) ConnectActivate(cb func(Application)) uint32 {
901901 fcb := func(clsPtr uintptr) {
902902 fa := Application{}
903903 fa.Ptr = clsPtr
@@ -905,13 +905,13 @@ func (x *Application) ConnectActivate(cb func(Application)) {
905905 cb(fa)
906906
907907 }
908- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
908+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
909909 }
910910
911911 // The ::command-line signal is emitted on the primary instance when
912912 // a commandline is not handled locally. See g_application_run() and
913913 // the #GApplicationCommandLine documentation for more information.
914-func (x *Application) ConnectCommandLine(cb func(Application, uintptr) int) {
914+func (x *Application) ConnectCommandLine(cb func(Application, uintptr) int) uint32 {
915915 fcb := func(clsPtr uintptr, CommandLineVarp uintptr) int {
916916 fa := Application{}
917917 fa.Ptr = clsPtr
@@ -919,7 +919,7 @@ func (x *Application) ConnectCommandLine(cb func(Application, uintptr) int) {
919919 return cb(fa, CommandLineVarp)
920920
921921 }
922- gobject.ObjectConnect(x.GoPointer(), "signal::command-line", purego.NewCallback(fcb))
922+ return gobject.SignalConnect(x.GoPointer(), "command-line", purego.NewCallback(fcb))
923923 }
924924
925925 // The ::handle-local-options signal is emitted on the local instance
@@ -963,7 +963,7 @@ func (x *Application) ConnectCommandLine(cb func(Application, uintptr) int) {
963963 // You can override local_command_line() if you need more powerful
964964 // capabilities than what is provided here, but this should not
965965 // normally be required.
966-func (x *Application) ConnectHandleLocalOptions(cb func(Application, uintptr) int) {
966+func (x *Application) ConnectHandleLocalOptions(cb func(Application, uintptr) int) uint32 {
967967 fcb := func(clsPtr uintptr, OptionsVarp uintptr) int {
968968 fa := Application{}
969969 fa.Ptr = clsPtr
@@ -971,7 +971,7 @@ func (x *Application) ConnectHandleLocalOptions(cb func(Application, uintptr) in
971971 return cb(fa, OptionsVarp)
972972
973973 }
974- gobject.ObjectConnect(x.GoPointer(), "signal::handle-local-options", purego.NewCallback(fcb))
974+ return gobject.SignalConnect(x.GoPointer(), "handle-local-options", purego.NewCallback(fcb))
975975 }
976976
977977 // The ::name-lost signal is emitted only on the registered primary instance
@@ -979,7 +979,7 @@ func (x *Application) ConnectHandleLocalOptions(cb func(Application, uintptr) in
979979 // is using the %G_APPLICATION_ALLOW_REPLACEMENT flag.
980980 //
981981 // The default handler for this signal calls g_application_quit().
982-func (x *Application) ConnectNameLost(cb func(Application) bool) {
982+func (x *Application) ConnectNameLost(cb func(Application) bool) uint32 {
983983 fcb := func(clsPtr uintptr) bool {
984984 fa := Application{}
985985 fa.Ptr = clsPtr
@@ -987,12 +987,12 @@ func (x *Application) ConnectNameLost(cb func(Application) bool) {
987987 return cb(fa)
988988
989989 }
990- gobject.ObjectConnect(x.GoPointer(), "signal::name-lost", purego.NewCallback(fcb))
990+ return gobject.SignalConnect(x.GoPointer(), "name-lost", purego.NewCallback(fcb))
991991 }
992992
993993 // The ::open signal is emitted on the primary instance when there are
994994 // files to open. See g_application_open() for more information.
995-func (x *Application) ConnectOpen(cb func(Application, uintptr, int, string)) {
995+func (x *Application) ConnectOpen(cb func(Application, uintptr, int, string)) uint32 {
996996 fcb := func(clsPtr uintptr, FilesVarp uintptr, NFilesVarp int, HintVarp string) {
997997 fa := Application{}
998998 fa.Ptr = clsPtr
@@ -1000,12 +1000,12 @@ func (x *Application) ConnectOpen(cb func(Application, uintptr, int, string)) {
10001000 cb(fa, FilesVarp, NFilesVarp, HintVarp)
10011001
10021002 }
1003- gobject.ObjectConnect(x.GoPointer(), "signal::open", purego.NewCallback(fcb))
1003+ return gobject.SignalConnect(x.GoPointer(), "open", purego.NewCallback(fcb))
10041004 }
10051005
10061006 // The ::shutdown signal is emitted only on the registered primary instance
10071007 // immediately after the main loop terminates.
1008-func (x *Application) ConnectShutdown(cb func(Application)) {
1008+func (x *Application) ConnectShutdown(cb func(Application)) uint32 {
10091009 fcb := func(clsPtr uintptr) {
10101010 fa := Application{}
10111011 fa.Ptr = clsPtr
@@ -1013,12 +1013,12 @@ func (x *Application) ConnectShutdown(cb func(Application)) {
10131013 cb(fa)
10141014
10151015 }
1016- gobject.ObjectConnect(x.GoPointer(), "signal::shutdown", purego.NewCallback(fcb))
1016+ return gobject.SignalConnect(x.GoPointer(), "shutdown", purego.NewCallback(fcb))
10171017 }
10181018
10191019 // The ::startup signal is emitted on the primary instance immediately
10201020 // after registration. See g_application_register().
1021-func (x *Application) ConnectStartup(cb func(Application)) {
1021+func (x *Application) ConnectStartup(cb func(Application)) uint32 {
10221022 fcb := func(clsPtr uintptr) {
10231023 fa := Application{}
10241024 fa.Ptr = clsPtr
@@ -1026,7 +1026,7 @@ func (x *Application) ConnectStartup(cb func(Application)) {
10261026 cb(fa)
10271027
10281028 }
1029- gobject.ObjectConnect(x.GoPointer(), "signal::startup", purego.NewCallback(fcb))
1029+ return gobject.SignalConnect(x.GoPointer(), "startup", purego.NewCallback(fcb))
10301030 }
10311031
10321032 // Emits the #GActionGroup::action-added signal on @action_group.
M v4/gio/gcancellable.go +2 -2
@@ -334,7 +334,7 @@ func (c *Cancellable) SetGoPointer(ptr uintptr) {
334334 // Note that the cancelled signal is emitted in the thread that
335335 // the user cancelled from, which may be the main thread. So, the
336336 // cancellable signal should not do something that can block.
337-func (x *Cancellable) ConnectCancelled(cb func(Cancellable)) {
337+func (x *Cancellable) ConnectCancelled(cb func(Cancellable)) uint32 {
338338 fcb := func(clsPtr uintptr) {
339339 fa := Cancellable{}
340340 fa.Ptr = clsPtr
@@ -342,7 +342,7 @@ func (x *Cancellable) ConnectCancelled(cb func(Cancellable)) {
342342 cb(fa)
343343
344344 }
345- gobject.ObjectConnect(x.GoPointer(), "signal::cancelled", purego.NewCallback(fcb))
345+ return gobject.SignalConnect(x.GoPointer(), "cancelled", purego.NewCallback(fcb))
346346 }
347347
348348 func init() {
M v4/gio/gdbusinterfaceskeleton.go +2 -2
@@ -225,7 +225,7 @@ func (c *DBusInterfaceSkeleton) SetGoPointer(ptr uintptr) {
225225 // flags set, no dedicated thread is ever used and the call will be
226226 // handled in the same thread as the object that @interface belongs
227227 // to was exported in.
228-func (x *DBusInterfaceSkeleton) ConnectGAuthorizeMethod(cb func(DBusInterfaceSkeleton, uintptr) bool) {
228+func (x *DBusInterfaceSkeleton) ConnectGAuthorizeMethod(cb func(DBusInterfaceSkeleton, uintptr) bool) uint32 {
229229 fcb := func(clsPtr uintptr, InvocationVarp uintptr) bool {
230230 fa := DBusInterfaceSkeleton{}
231231 fa.Ptr = clsPtr
@@ -233,7 +233,7 @@ func (x *DBusInterfaceSkeleton) ConnectGAuthorizeMethod(cb func(DBusInterfaceSke
233233 return cb(fa, InvocationVarp)
234234
235235 }
236- gobject.ObjectConnect(x.GoPointer(), "signal::g-authorize-method", purego.NewCallback(fcb))
236+ return gobject.SignalConnect(x.GoPointer(), "g-authorize-method", purego.NewCallback(fcb))
237237 }
238238
239239 // Gets the #GDBusObject that @interface_ belongs to, if any.
M v4/gio/gdbusobjectmanagerclient.go +4 -4
@@ -263,7 +263,7 @@ func (c *DBusObjectManagerClient) SetGoPointer(ptr uintptr) {
263263 // This signal is emitted in the
264264 // [thread-default main context][g-main-context-push-thread-default]
265265 // that @manager was constructed in.
266-func (x *DBusObjectManagerClient) ConnectInterfaceProxyPropertiesChanged(cb func(DBusObjectManagerClient, uintptr, uintptr, uintptr, uintptr)) {
266+func (x *DBusObjectManagerClient) ConnectInterfaceProxyPropertiesChanged(cb func(DBusObjectManagerClient, uintptr, uintptr, uintptr, uintptr)) uint32 {
267267 fcb := func(clsPtr uintptr, ObjectProxyVarp uintptr, InterfaceProxyVarp uintptr, ChangedPropertiesVarp uintptr, InvalidatedPropertiesVarp uintptr) {
268268 fa := DBusObjectManagerClient{}
269269 fa.Ptr = clsPtr
@@ -271,7 +271,7 @@ func (x *DBusObjectManagerClient) ConnectInterfaceProxyPropertiesChanged(cb func
271271 cb(fa, ObjectProxyVarp, InterfaceProxyVarp, ChangedPropertiesVarp, InvalidatedPropertiesVarp)
272272
273273 }
274- gobject.ObjectConnect(x.GoPointer(), "signal::interface-proxy-properties-changed", purego.NewCallback(fcb))
274+ return gobject.SignalConnect(x.GoPointer(), "interface-proxy-properties-changed", purego.NewCallback(fcb))
275275 }
276276
277277 // Emitted when a D-Bus signal is received on @interface_proxy.
@@ -282,7 +282,7 @@ func (x *DBusObjectManagerClient) ConnectInterfaceProxyPropertiesChanged(cb func
282282 // This signal is emitted in the
283283 // [thread-default main context][g-main-context-push-thread-default]
284284 // that @manager was constructed in.
285-func (x *DBusObjectManagerClient) ConnectInterfaceProxySignal(cb func(DBusObjectManagerClient, uintptr, uintptr, string, string, uintptr)) {
285+func (x *DBusObjectManagerClient) ConnectInterfaceProxySignal(cb func(DBusObjectManagerClient, uintptr, uintptr, string, string, uintptr)) uint32 {
286286 fcb := func(clsPtr uintptr, ObjectProxyVarp uintptr, InterfaceProxyVarp uintptr, SenderNameVarp string, SignalNameVarp string, ParametersVarp uintptr) {
287287 fa := DBusObjectManagerClient{}
288288 fa.Ptr = clsPtr
@@ -290,7 +290,7 @@ func (x *DBusObjectManagerClient) ConnectInterfaceProxySignal(cb func(DBusObject
290290 cb(fa, ObjectProxyVarp, InterfaceProxyVarp, SenderNameVarp, SignalNameVarp, ParametersVarp)
291291
292292 }
293- gobject.ObjectConnect(x.GoPointer(), "signal::interface-proxy-signal", purego.NewCallback(fcb))
293+ return gobject.SignalConnect(x.GoPointer(), "interface-proxy-signal", purego.NewCallback(fcb))
294294 }
295295
296296 // Starts asynchronous initialization of the object implementing the
M v4/gio/gdbusobjectskeleton.go +2 -2
@@ -121,7 +121,7 @@ func (c *DBusObjectSkeleton) SetGoPointer(ptr uintptr) {
121121 // except that it is for the enclosing object.
122122 //
123123 // The default class handler just returns %TRUE.
124-func (x *DBusObjectSkeleton) ConnectAuthorizeMethod(cb func(DBusObjectSkeleton, uintptr, uintptr) bool) {
124+func (x *DBusObjectSkeleton) ConnectAuthorizeMethod(cb func(DBusObjectSkeleton, uintptr, uintptr) bool) uint32 {
125125 fcb := func(clsPtr uintptr, InterfaceVarp uintptr, InvocationVarp uintptr) bool {
126126 fa := DBusObjectSkeleton{}
127127 fa.Ptr = clsPtr
@@ -129,7 +129,7 @@ func (x *DBusObjectSkeleton) ConnectAuthorizeMethod(cb func(DBusObjectSkeleton,
129129 return cb(fa, InterfaceVarp, InvocationVarp)
130130
131131 }
132- gobject.ObjectConnect(x.GoPointer(), "signal::authorize-method", purego.NewCallback(fcb))
132+ return gobject.SignalConnect(x.GoPointer(), "authorize-method", purego.NewCallback(fcb))
133133 }
134134
135135 // Gets the D-Bus interface with name @interface_name associated with
M v4/gio/gdbusproxy.go +4 -4
@@ -538,7 +538,7 @@ func (c *DBusProxy) SetGoPointer(ptr uintptr) {
538538 // This signal corresponds to the
539539 // `PropertiesChanged` D-Bus signal on the
540540 // `org.freedesktop.DBus.Properties` interface.
541-func (x *DBusProxy) ConnectGPropertiesChanged(cb func(DBusProxy, uintptr, uintptr)) {
541+func (x *DBusProxy) ConnectGPropertiesChanged(cb func(DBusProxy, uintptr, uintptr)) uint32 {
542542 fcb := func(clsPtr uintptr, ChangedPropertiesVarp uintptr, InvalidatedPropertiesVarp uintptr) {
543543 fa := DBusProxy{}
544544 fa.Ptr = clsPtr
@@ -546,7 +546,7 @@ func (x *DBusProxy) ConnectGPropertiesChanged(cb func(DBusProxy, uintptr, uintpt
546546 cb(fa, ChangedPropertiesVarp, InvalidatedPropertiesVarp)
547547
548548 }
549- gobject.ObjectConnect(x.GoPointer(), "signal::g-properties-changed", purego.NewCallback(fcb))
549+ return gobject.SignalConnect(x.GoPointer(), "g-properties-changed", purego.NewCallback(fcb))
550550 }
551551
552552 // Emitted when a signal from the remote object and interface that @proxy is for, has been received.
@@ -554,7 +554,7 @@ func (x *DBusProxy) ConnectGPropertiesChanged(cb func(DBusProxy, uintptr, uintpt
554554 // Since 2.72 this signal supports detailed connections. You can connect to
555555 // the detailed signal `g-signal::x` in order to receive callbacks only when
556556 // signal `x` is received from the remote object.
557-func (x *DBusProxy) ConnectGSignal(cb func(DBusProxy, string, string, uintptr)) {
557+func (x *DBusProxy) ConnectGSignal(cb func(DBusProxy, string, string, uintptr)) uint32 {
558558 fcb := func(clsPtr uintptr, SenderNameVarp string, SignalNameVarp string, ParametersVarp uintptr) {
559559 fa := DBusProxy{}
560560 fa.Ptr = clsPtr
@@ -562,7 +562,7 @@ func (x *DBusProxy) ConnectGSignal(cb func(DBusProxy, string, string, uintptr))
562562 cb(fa, SenderNameVarp, SignalNameVarp, ParametersVarp)
563563
564564 }
565- gobject.ObjectConnect(x.GoPointer(), "signal::g-signal", purego.NewCallback(fcb))
565+ return gobject.SignalConnect(x.GoPointer(), "g-signal", purego.NewCallback(fcb))
566566 }
567567
568568 // Starts asynchronous initialization of the object implementing the
M v4/gio/gdebugcontrollerdbus.go +2 -2
@@ -213,7 +213,7 @@ func (c *DebugControllerDBus) SetGoPointer(ptr uintptr) {
213213 // Signal handlers must not modify @invocation, or cause it to return a value.
214214 //
215215 // The default class handler just returns %TRUE.
216-func (x *DebugControllerDBus) ConnectAuthorize(cb func(DebugControllerDBus, uintptr) bool) {
216+func (x *DebugControllerDBus) ConnectAuthorize(cb func(DebugControllerDBus, uintptr) bool) uint32 {
217217 fcb := func(clsPtr uintptr, InvocationVarp uintptr) bool {
218218 fa := DebugControllerDBus{}
219219 fa.Ptr = clsPtr
@@ -221,7 +221,7 @@ func (x *DebugControllerDBus) ConnectAuthorize(cb func(DebugControllerDBus, uint
221221 return cb(fa, InvocationVarp)
222222
223223 }
224- gobject.ObjectConnect(x.GoPointer(), "signal::authorize", purego.NewCallback(fcb))
224+ return gobject.SignalConnect(x.GoPointer(), "authorize", purego.NewCallback(fcb))
225225 }
226226
227227 // Get the value of #GDebugController:debug-enabled.
M v4/gio/gfilemonitor.go +2 -2
@@ -117,7 +117,7 @@ func (c *FileMonitor) SetGoPointer(ptr uintptr) {
117117 // old path, and @other_file will be set to a #GFile containing the new path.
118118 //
119119 // In all the other cases, @other_file will be set to #NULL.
120-func (x *FileMonitor) ConnectChanged(cb func(FileMonitor, uintptr, uintptr, FileMonitorEvent)) {
120+func (x *FileMonitor) ConnectChanged(cb func(FileMonitor, uintptr, uintptr, FileMonitorEvent)) uint32 {
121121 fcb := func(clsPtr uintptr, FileVarp uintptr, OtherFileVarp uintptr, EventTypeVarp FileMonitorEvent) {
122122 fa := FileMonitor{}
123123 fa.Ptr = clsPtr
@@ -125,7 +125,7 @@ func (x *FileMonitor) ConnectChanged(cb func(FileMonitor, uintptr, uintptr, File
125125 cb(fa, FileVarp, OtherFileVarp, EventTypeVarp)
126126
127127 }
128- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
128+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
129129 }
130130
131131 func init() {
M v4/gio/gfilenamecompleter.go +2 -2
@@ -77,7 +77,7 @@ func (c *FilenameCompleter) SetGoPointer(ptr uintptr) {
7777 }
7878
7979 // Emitted when the file name completion information comes available.
80-func (x *FilenameCompleter) ConnectGotCompletionData(cb func(FilenameCompleter)) {
80+func (x *FilenameCompleter) ConnectGotCompletionData(cb func(FilenameCompleter)) uint32 {
8181 fcb := func(clsPtr uintptr) {
8282 fa := FilenameCompleter{}
8383 fa.Ptr = clsPtr
@@ -85,7 +85,7 @@ func (x *FilenameCompleter) ConnectGotCompletionData(cb func(FilenameCompleter))
8585 cb(fa)
8686
8787 }
88- gobject.ObjectConnect(x.GoPointer(), "signal::got-completion-data", purego.NewCallback(fcb))
88+ return gobject.SignalConnect(x.GoPointer(), "got-completion-data", purego.NewCallback(fcb))
8989 }
9090
9191 func init() {
M v4/gio/gio-2.0.go +14 -14
@@ -90,7 +90,7 @@ func (c *AppInfoMonitor) SetGoPointer(ptr uintptr) {
9090
9191 // Signal emitted when the app info database for changes (ie: newly installed
9292 // or removed applications).
93-func (x *AppInfoMonitor) ConnectChanged(cb func(AppInfoMonitor)) {
93+func (x *AppInfoMonitor) ConnectChanged(cb func(AppInfoMonitor)) uint32 {
9494 fcb := func(clsPtr uintptr) {
9595 fa := AppInfoMonitor{}
9696 fa.Ptr = clsPtr
@@ -98,7 +98,7 @@ func (x *AppInfoMonitor) ConnectChanged(cb func(AppInfoMonitor)) {
9898 cb(fa)
9999
100100 }
101- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
101+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
102102 }
103103
104104 // #GBytesIcon specifies an image held in memory in a common format (usually
@@ -640,7 +640,7 @@ func (c *DBusAuthObserver) SetGoPointer(ptr uintptr) {
640640 }
641641
642642 // Emitted to check if @mechanism is allowed to be used.
643-func (x *DBusAuthObserver) ConnectAllowMechanism(cb func(DBusAuthObserver, string) bool) {
643+func (x *DBusAuthObserver) ConnectAllowMechanism(cb func(DBusAuthObserver, string) bool) uint32 {
644644 fcb := func(clsPtr uintptr, MechanismVarp string) bool {
645645 fa := DBusAuthObserver{}
646646 fa.Ptr = clsPtr
@@ -648,12 +648,12 @@ func (x *DBusAuthObserver) ConnectAllowMechanism(cb func(DBusAuthObserver, strin
648648 return cb(fa, MechanismVarp)
649649
650650 }
651- gobject.ObjectConnect(x.GoPointer(), "signal::allow-mechanism", purego.NewCallback(fcb))
651+ return gobject.SignalConnect(x.GoPointer(), "allow-mechanism", purego.NewCallback(fcb))
652652 }
653653
654654 // Emitted to check if a peer that is successfully authenticated
655655 // is authorized.
656-func (x *DBusAuthObserver) ConnectAuthorizeAuthenticatedPeer(cb func(DBusAuthObserver, uintptr, uintptr) bool) {
656+func (x *DBusAuthObserver) ConnectAuthorizeAuthenticatedPeer(cb func(DBusAuthObserver, uintptr, uintptr) bool) uint32 {
657657 fcb := func(clsPtr uintptr, StreamVarp uintptr, CredentialsVarp uintptr) bool {
658658 fa := DBusAuthObserver{}
659659 fa.Ptr = clsPtr
@@ -661,7 +661,7 @@ func (x *DBusAuthObserver) ConnectAuthorizeAuthenticatedPeer(cb func(DBusAuthObs
661661 return cb(fa, StreamVarp, CredentialsVarp)
662662
663663 }
664- gobject.ObjectConnect(x.GoPointer(), "signal::authorize-authenticated-peer", purego.NewCallback(fcb))
664+ return gobject.SignalConnect(x.GoPointer(), "authorize-authenticated-peer", purego.NewCallback(fcb))
665665 }
666666
667667 // The #GDBusConnection type is used for D-Bus connections to remote
@@ -1828,7 +1828,7 @@ func (c *DBusConnection) SetGoPointer(ptr uintptr) {
18281828 // Upon receiving this signal, you should give up your reference to
18291829 // @connection. You are guaranteed that this signal is emitted only
18301830 // once.
1831-func (x *DBusConnection) ConnectClosed(cb func(DBusConnection, bool, uintptr)) {
1831+func (x *DBusConnection) ConnectClosed(cb func(DBusConnection, bool, uintptr)) uint32 {
18321832 fcb := func(clsPtr uintptr, RemotePeerVanishedVarp bool, ErrorVarp uintptr) {
18331833 fa := DBusConnection{}
18341834 fa.Ptr = clsPtr
@@ -1836,7 +1836,7 @@ func (x *DBusConnection) ConnectClosed(cb func(DBusConnection, bool, uintptr)) {
18361836 cb(fa, RemotePeerVanishedVarp, ErrorVarp)
18371837
18381838 }
1839- gobject.ObjectConnect(x.GoPointer(), "signal::closed", purego.NewCallback(fcb))
1839+ return gobject.SignalConnect(x.GoPointer(), "closed", purego.NewCallback(fcb))
18401840 }
18411841
18421842 // Starts asynchronous initialization of the object implementing the
@@ -3082,7 +3082,7 @@ func (c *DBusServer) SetGoPointer(ptr uintptr) {
30823082 // before incoming messages on @connection are processed. This means
30833083 // that it's suitable to call g_dbus_connection_register_object() or
30843084 // similar from the signal handler.
3085-func (x *DBusServer) ConnectNewConnection(cb func(DBusServer, uintptr) bool) {
3085+func (x *DBusServer) ConnectNewConnection(cb func(DBusServer, uintptr) bool) uint32 {
30863086 fcb := func(clsPtr uintptr, ConnectionVarp uintptr) bool {
30873087 fa := DBusServer{}
30883088 fa.Ptr = clsPtr
@@ -3090,7 +3090,7 @@ func (x *DBusServer) ConnectNewConnection(cb func(DBusServer, uintptr) bool) {
30903090 return cb(fa, ConnectionVarp)
30913091
30923092 }
3093- gobject.ObjectConnect(x.GoPointer(), "signal::new-connection", purego.NewCallback(fcb))
3093+ return gobject.SignalConnect(x.GoPointer(), "new-connection", purego.NewCallback(fcb))
30943094 }
30953095
30963096 // Initializes the object implementing the interface.
@@ -4377,7 +4377,7 @@ func (c *SimpleAction) SetGoPointer(ptr uintptr) {
43774377 // type, the default is to forward them directly to
43784378 // #GSimpleAction::change-state. This should allow almost all users
43794379 // of #GSimpleAction to connect only one handler or the other.
4380-func (x *SimpleAction) ConnectActivate(cb func(SimpleAction, uintptr)) {
4380+func (x *SimpleAction) ConnectActivate(cb func(SimpleAction, uintptr)) uint32 {
43814381 fcb := func(clsPtr uintptr, ParameterVarp uintptr) {
43824382 fa := SimpleAction{}
43834383 fa.Ptr = clsPtr
@@ -4385,7 +4385,7 @@ func (x *SimpleAction) ConnectActivate(cb func(SimpleAction, uintptr)) {
43854385 cb(fa, ParameterVarp)
43864386
43874387 }
4388- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
4388+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
43894389 }
43904390
43914391 // Indicates that the action just received a request to change its
@@ -4424,7 +4424,7 @@ func (x *SimpleAction) ConnectActivate(cb func(SimpleAction, uintptr)) {
44244424 //
44254425 // The handler need not set the state to the requested value.
44264426 // It could set it to any value at all, or take some other action.
4427-func (x *SimpleAction) ConnectChangeState(cb func(SimpleAction, uintptr)) {
4427+func (x *SimpleAction) ConnectChangeState(cb func(SimpleAction, uintptr)) uint32 {
44284428 fcb := func(clsPtr uintptr, ValueVarp uintptr) {
44294429 fa := SimpleAction{}
44304430 fa.Ptr = clsPtr
@@ -4432,7 +4432,7 @@ func (x *SimpleAction) ConnectChangeState(cb func(SimpleAction, uintptr)) {
44324432 cb(fa, ValueVarp)
44334433
44344434 }
4435- gobject.ObjectConnect(x.GoPointer(), "signal::change-state", purego.NewCallback(fcb))
4435+ return gobject.SignalConnect(x.GoPointer(), "change-state", purego.NewCallback(fcb))
44364436 }
44374437
44384438 // Activates the action.
M v4/gio/gmenumodel.go +2 -2
@@ -495,7 +495,7 @@ func (c *MenuModel) SetGoPointer(ptr uintptr) {
495495 // Signal handlers may query the model (particularly the added items)
496496 // and expect to see the results of the modification that is being
497497 // reported. The signal is emitted after the modification.
498-func (x *MenuModel) ConnectItemsChanged(cb func(MenuModel, int, int, int)) {
498+func (x *MenuModel) ConnectItemsChanged(cb func(MenuModel, int, int, int)) uint32 {
499499 fcb := func(clsPtr uintptr, PositionVarp int, RemovedVarp int, AddedVarp int) {
500500 fa := MenuModel{}
501501 fa.Ptr = clsPtr
@@ -503,7 +503,7 @@ func (x *MenuModel) ConnectItemsChanged(cb func(MenuModel, int, int, int)) {
503503 cb(fa, PositionVarp, RemovedVarp, AddedVarp)
504504
505505 }
506- gobject.ObjectConnect(x.GoPointer(), "signal::items-changed", purego.NewCallback(fcb))
506+ return gobject.SignalConnect(x.GoPointer(), "items-changed", purego.NewCallback(fcb))
507507 }
508508
509509 func init() {
M v4/gio/gmountoperation.go +12 -12
@@ -248,7 +248,7 @@ func (c *MountOperation) SetGoPointer(ptr uintptr) {
248248 //
249249 // Implementations of GMountOperation should handle this signal
250250 // by dismissing open password dialogs.
251-func (x *MountOperation) ConnectAborted(cb func(MountOperation)) {
251+func (x *MountOperation) ConnectAborted(cb func(MountOperation)) uint32 {
252252 fcb := func(clsPtr uintptr) {
253253 fa := MountOperation{}
254254 fa.Ptr = clsPtr
@@ -256,7 +256,7 @@ func (x *MountOperation) ConnectAborted(cb func(MountOperation)) {
256256 cb(fa)
257257
258258 }
259- gobject.ObjectConnect(x.GoPointer(), "signal::aborted", purego.NewCallback(fcb))
259+ return gobject.SignalConnect(x.GoPointer(), "aborted", purego.NewCallback(fcb))
260260 }
261261
262262 // Emitted when a mount operation asks the user for a password.
@@ -264,7 +264,7 @@ func (x *MountOperation) ConnectAborted(cb func(MountOperation)) {
264264 // If the message contains a line break, the first line should be
265265 // presented as a heading. For example, it may be used as the
266266 // primary text in a #GtkMessageDialog.
267-func (x *MountOperation) ConnectAskPassword(cb func(MountOperation, string, string, string, AskPasswordFlags)) {
267+func (x *MountOperation) ConnectAskPassword(cb func(MountOperation, string, string, string, AskPasswordFlags)) uint32 {
268268 fcb := func(clsPtr uintptr, MessageVarp string, DefaultUserVarp string, DefaultDomainVarp string, FlagsVarp AskPasswordFlags) {
269269 fa := MountOperation{}
270270 fa.Ptr = clsPtr
@@ -272,7 +272,7 @@ func (x *MountOperation) ConnectAskPassword(cb func(MountOperation, string, stri
272272 cb(fa, MessageVarp, DefaultUserVarp, DefaultDomainVarp, FlagsVarp)
273273
274274 }
275- gobject.ObjectConnect(x.GoPointer(), "signal::ask-password", purego.NewCallback(fcb))
275+ return gobject.SignalConnect(x.GoPointer(), "ask-password", purego.NewCallback(fcb))
276276 }
277277
278278 // Emitted when asking the user a question and gives a list of
@@ -281,7 +281,7 @@ func (x *MountOperation) ConnectAskPassword(cb func(MountOperation, string, stri
281281 // If the message contains a line break, the first line should be
282282 // presented as a heading. For example, it may be used as the
283283 // primary text in a #GtkMessageDialog.
284-func (x *MountOperation) ConnectAskQuestion(cb func(MountOperation, string, uintptr)) {
284+func (x *MountOperation) ConnectAskQuestion(cb func(MountOperation, string, uintptr)) uint32 {
285285 fcb := func(clsPtr uintptr, MessageVarp string, ChoicesVarp uintptr) {
286286 fa := MountOperation{}
287287 fa.Ptr = clsPtr
@@ -289,11 +289,11 @@ func (x *MountOperation) ConnectAskQuestion(cb func(MountOperation, string, uint
289289 cb(fa, MessageVarp, ChoicesVarp)
290290
291291 }
292- gobject.ObjectConnect(x.GoPointer(), "signal::ask-question", purego.NewCallback(fcb))
292+ return gobject.SignalConnect(x.GoPointer(), "ask-question", purego.NewCallback(fcb))
293293 }
294294
295295 // Emitted when the user has replied to the mount operation.
296-func (x *MountOperation) ConnectReply(cb func(MountOperation, MountOperationResult)) {
296+func (x *MountOperation) ConnectReply(cb func(MountOperation, MountOperationResult)) uint32 {
297297 fcb := func(clsPtr uintptr, ResultVarp MountOperationResult) {
298298 fa := MountOperation{}
299299 fa.Ptr = clsPtr
@@ -301,7 +301,7 @@ func (x *MountOperation) ConnectReply(cb func(MountOperation, MountOperationResu
301301 cb(fa, ResultVarp)
302302
303303 }
304- gobject.ObjectConnect(x.GoPointer(), "signal::reply", purego.NewCallback(fcb))
304+ return gobject.SignalConnect(x.GoPointer(), "reply", purego.NewCallback(fcb))
305305 }
306306
307307 // Emitted when one or more processes are blocking an operation
@@ -316,7 +316,7 @@ func (x *MountOperation) ConnectReply(cb func(MountOperation, MountOperationResu
316316 // If the message contains a line break, the first line should be
317317 // presented as a heading. For example, it may be used as the
318318 // primary text in a #GtkMessageDialog.
319-func (x *MountOperation) ConnectShowProcesses(cb func(MountOperation, string, uintptr, uintptr)) {
319+func (x *MountOperation) ConnectShowProcesses(cb func(MountOperation, string, uintptr, uintptr)) uint32 {
320320 fcb := func(clsPtr uintptr, MessageVarp string, ProcessesVarp uintptr, ChoicesVarp uintptr) {
321321 fa := MountOperation{}
322322 fa.Ptr = clsPtr
@@ -324,7 +324,7 @@ func (x *MountOperation) ConnectShowProcesses(cb func(MountOperation, string, ui
324324 cb(fa, MessageVarp, ProcessesVarp, ChoicesVarp)
325325
326326 }
327- gobject.ObjectConnect(x.GoPointer(), "signal::show-processes", purego.NewCallback(fcb))
327+ return gobject.SignalConnect(x.GoPointer(), "show-processes", purego.NewCallback(fcb))
328328 }
329329
330330 // Emitted when an unmount operation has been busy for more than some time
@@ -343,7 +343,7 @@ func (x *MountOperation) ConnectShowProcesses(cb func(MountOperation, string, ui
343343 // If the message contains a line break, the first line should be
344344 // presented as a heading. For example, it may be used as the
345345 // primary text in a #GtkMessageDialog.
346-func (x *MountOperation) ConnectShowUnmountProgress(cb func(MountOperation, string, int64, int64)) {
346+func (x *MountOperation) ConnectShowUnmountProgress(cb func(MountOperation, string, int64, int64)) uint32 {
347347 fcb := func(clsPtr uintptr, MessageVarp string, TimeLeftVarp int64, BytesLeftVarp int64) {
348348 fa := MountOperation{}
349349 fa.Ptr = clsPtr
@@ -351,7 +351,7 @@ func (x *MountOperation) ConnectShowUnmountProgress(cb func(MountOperation, stri
351351 cb(fa, MessageVarp, TimeLeftVarp, BytesLeftVarp)
352352
353353 }
354- gobject.ObjectConnect(x.GoPointer(), "signal::show-unmount-progress", purego.NewCallback(fcb))
354+ return gobject.SignalConnect(x.GoPointer(), "show-unmount-progress", purego.NewCallback(fcb))
355355 }
356356
357357 func init() {
M v4/gio/gresolver.go +2 -2
@@ -361,7 +361,7 @@ func (c *Resolver) SetGoPointer(ptr uintptr) {
361361
362362 // Emitted when the resolver notices that the system resolver
363363 // configuration has changed.
364-func (x *Resolver) ConnectReload(cb func(Resolver)) {
364+func (x *Resolver) ConnectReload(cb func(Resolver)) uint32 {
365365 fcb := func(clsPtr uintptr) {
366366 fa := Resolver{}
367367 fa.Ptr = clsPtr
@@ -369,7 +369,7 @@ func (x *Resolver) ConnectReload(cb func(Resolver)) {
369369 cb(fa)
370370
371371 }
372- gobject.ObjectConnect(x.GoPointer(), "signal::reload", purego.NewCallback(fcb))
372+ return gobject.SignalConnect(x.GoPointer(), "reload", purego.NewCallback(fcb))
373373 }
374374
375375 func init() {
M v4/gio/gsettings.go +8 -8
@@ -1230,7 +1230,7 @@ func (c *Settings) SetGoPointer(ptr uintptr) {
12301230 // The default handler for this signal invokes the "changed" signal
12311231 // for each affected key. If any other connected handler returns
12321232 // %TRUE then this default functionality will be suppressed.
1233-func (x *Settings) ConnectChangeEvent(cb func(Settings, uintptr, int) bool) {
1233+func (x *Settings) ConnectChangeEvent(cb func(Settings, uintptr, int) bool) uint32 {
12341234 fcb := func(clsPtr uintptr, KeysVarp uintptr, NKeysVarp int) bool {
12351235 fa := Settings{}
12361236 fa.Ptr = clsPtr
@@ -1238,7 +1238,7 @@ func (x *Settings) ConnectChangeEvent(cb func(Settings, uintptr, int) bool) {
12381238 return cb(fa, KeysVarp, NKeysVarp)
12391239
12401240 }
1241- gobject.ObjectConnect(x.GoPointer(), "signal::change-event", purego.NewCallback(fcb))
1241+ return gobject.SignalConnect(x.GoPointer(), "change-event", purego.NewCallback(fcb))
12421242 }
12431243
12441244 // The "changed" signal is emitted when a key has potentially changed.
@@ -1251,7 +1251,7 @@ func (x *Settings) ConnectChangeEvent(cb func(Settings, uintptr, int) bool) {
12511251 //
12521252 // Note that @settings only emits this signal if you have read @key at
12531253 // least once while a signal handler was already connected for @key.
1254-func (x *Settings) ConnectChanged(cb func(Settings, string)) {
1254+func (x *Settings) ConnectChanged(cb func(Settings, string)) uint32 {
12551255 fcb := func(clsPtr uintptr, KeyVarp string) {
12561256 fa := Settings{}
12571257 fa.Ptr = clsPtr
@@ -1259,7 +1259,7 @@ func (x *Settings) ConnectChanged(cb func(Settings, string)) {
12591259 cb(fa, KeyVarp)
12601260
12611261 }
1262- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
1262+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
12631263 }
12641264
12651265 // The "writable-change-event" signal is emitted once per writability
@@ -1280,7 +1280,7 @@ func (x *Settings) ConnectChanged(cb func(Settings, string)) {
12801280 // example, a new mandatory setting is introduced). If any other
12811281 // connected handler returns %TRUE then this default functionality
12821282 // will be suppressed.
1283-func (x *Settings) ConnectWritableChangeEvent(cb func(Settings, uint) bool) {
1283+func (x *Settings) ConnectWritableChangeEvent(cb func(Settings, uint) bool) uint32 {
12841284 fcb := func(clsPtr uintptr, KeyVarp uint) bool {
12851285 fa := Settings{}
12861286 fa.Ptr = clsPtr
@@ -1288,7 +1288,7 @@ func (x *Settings) ConnectWritableChangeEvent(cb func(Settings, uint) bool) {
12881288 return cb(fa, KeyVarp)
12891289
12901290 }
1291- gobject.ObjectConnect(x.GoPointer(), "signal::writable-change-event", purego.NewCallback(fcb))
1291+ return gobject.SignalConnect(x.GoPointer(), "writable-change-event", purego.NewCallback(fcb))
12921292 }
12931293
12941294 // The "writable-changed" signal is emitted when the writability of a
@@ -1298,7 +1298,7 @@ func (x *Settings) ConnectWritableChangeEvent(cb func(Settings, uint) bool) {
12981298 // This signal supports detailed connections. You can connect to the
12991299 // detailed signal "writable-changed::x" in order to only receive
13001300 // callbacks when the writability of "x" changes.
1301-func (x *Settings) ConnectWritableChanged(cb func(Settings, string)) {
1301+func (x *Settings) ConnectWritableChanged(cb func(Settings, string)) uint32 {
13021302 fcb := func(clsPtr uintptr, KeyVarp string) {
13031303 fa := Settings{}
13041304 fa.Ptr = clsPtr
@@ -1306,7 +1306,7 @@ func (x *Settings) ConnectWritableChanged(cb func(Settings, string)) {
13061306 cb(fa, KeyVarp)
13071307
13081308 }
1309- gobject.ObjectConnect(x.GoPointer(), "signal::writable-changed", purego.NewCallback(fcb))
1309+ return gobject.SignalConnect(x.GoPointer(), "writable-changed", purego.NewCallback(fcb))
13101310 }
13111311
13121312 func init() {
M v4/gio/gsocketclient.go +2 -2
@@ -700,7 +700,7 @@ func (c *SocketClient) SetGoPointer(ptr uintptr) {
700700 //
701701 // Note that there may be additional #GSocketClientEvent values in
702702 // the future; unrecognized @event values should be ignored.
703-func (x *SocketClient) ConnectEvent(cb func(SocketClient, SocketClientEvent, uintptr, uintptr)) {
703+func (x *SocketClient) ConnectEvent(cb func(SocketClient, SocketClientEvent, uintptr, uintptr)) uint32 {
704704 fcb := func(clsPtr uintptr, EventVarp SocketClientEvent, ConnectableVarp uintptr, ConnectionVarp uintptr) {
705705 fa := SocketClient{}
706706 fa.Ptr = clsPtr
@@ -708,7 +708,7 @@ func (x *SocketClient) ConnectEvent(cb func(SocketClient, SocketClientEvent, uin
708708 cb(fa, EventVarp, ConnectableVarp, ConnectionVarp)
709709
710710 }
711- gobject.ObjectConnect(x.GoPointer(), "signal::event", purego.NewCallback(fcb))
711+ return gobject.SignalConnect(x.GoPointer(), "event", purego.NewCallback(fcb))
712712 }
713713
714714 func init() {
M v4/gio/gsocketlistener.go +2 -2
@@ -335,7 +335,7 @@ func (c *SocketListener) SetGoPointer(ptr uintptr) {
335335 // Note that when @listener is used to listen on both IPv4 and
336336 // IPv6, a separate set of signals will be emitted for each, and
337337 // the order they happen in is undefined.
338-func (x *SocketListener) ConnectEvent(cb func(SocketListener, SocketListenerEvent, uintptr)) {
338+func (x *SocketListener) ConnectEvent(cb func(SocketListener, SocketListenerEvent, uintptr)) uint32 {
339339 fcb := func(clsPtr uintptr, EventVarp SocketListenerEvent, SocketVarp uintptr) {
340340 fa := SocketListener{}
341341 fa.Ptr = clsPtr
@@ -343,7 +343,7 @@ func (x *SocketListener) ConnectEvent(cb func(SocketListener, SocketListenerEven
343343 cb(fa, EventVarp, SocketVarp)
344344
345345 }
346- gobject.ObjectConnect(x.GoPointer(), "signal::event", purego.NewCallback(fcb))
346+ return gobject.SignalConnect(x.GoPointer(), "event", purego.NewCallback(fcb))
347347 }
348348
349349 func init() {
M v4/gio/gsocketservice.go +2 -2
@@ -138,7 +138,7 @@ func (c *SocketService) SetGoPointer(ptr uintptr) {
138138 //
139139 // @connection will be unreffed once the signal handler returns,
140140 // so you need to ref it yourself if you are planning to use it.
141-func (x *SocketService) ConnectIncoming(cb func(SocketService, uintptr, uintptr) bool) {
141+func (x *SocketService) ConnectIncoming(cb func(SocketService, uintptr, uintptr) bool) uint32 {
142142 fcb := func(clsPtr uintptr, ConnectionVarp uintptr, SourceObjectVarp uintptr) bool {
143143 fa := SocketService{}
144144 fa.Ptr = clsPtr
@@ -146,7 +146,7 @@ func (x *SocketService) ConnectIncoming(cb func(SocketService, uintptr, uintptr)
146146 return cb(fa, ConnectionVarp, SourceObjectVarp)
147147
148148 }
149- gobject.ObjectConnect(x.GoPointer(), "signal::incoming", purego.NewCallback(fcb))
149+ return gobject.SignalConnect(x.GoPointer(), "incoming", purego.NewCallback(fcb))
150150 }
151151
152152 func init() {
M v4/gio/gthreadedsocketservice.go +2 -2
@@ -68,7 +68,7 @@ func (c *ThreadedSocketService) SetGoPointer(ptr uintptr) {
6868 // incoming connection. This thread is dedicated to handling
6969 // @connection and may perform blocking IO. The signal handler need
7070 // not return until the connection is closed.
71-func (x *ThreadedSocketService) ConnectRun(cb func(ThreadedSocketService, uintptr, uintptr) bool) {
71+func (x *ThreadedSocketService) ConnectRun(cb func(ThreadedSocketService, uintptr, uintptr) bool) uint32 {
7272 fcb := func(clsPtr uintptr, ConnectionVarp uintptr, SourceObjectVarp uintptr) bool {
7373 fa := ThreadedSocketService{}
7474 fa.Ptr = clsPtr
@@ -76,7 +76,7 @@ func (x *ThreadedSocketService) ConnectRun(cb func(ThreadedSocketService, uintpt
7676 return cb(fa, ConnectionVarp, SourceObjectVarp)
7777
7878 }
79- gobject.ObjectConnect(x.GoPointer(), "signal::run", purego.NewCallback(fcb))
79+ return gobject.SignalConnect(x.GoPointer(), "run", purego.NewCallback(fcb))
8080 }
8181
8282 func init() {
M v4/gio/gtlsconnection.go +2 -2
@@ -489,7 +489,7 @@ func (c *TlsConnection) SetGoPointer(ptr uintptr) {
489489 // If you are doing I/O in another thread, you do not
490490 // need to worry about this, and can simply block in the signal
491491 // handler until the UI thread returns an answer.
492-func (x *TlsConnection) ConnectAcceptCertificate(cb func(TlsConnection, uintptr, TlsCertificateFlags) bool) {
492+func (x *TlsConnection) ConnectAcceptCertificate(cb func(TlsConnection, uintptr, TlsCertificateFlags) bool) uint32 {
493493 fcb := func(clsPtr uintptr, PeerCertVarp uintptr, ErrorsVarp TlsCertificateFlags) bool {
494494 fa := TlsConnection{}
495495 fa.Ptr = clsPtr
@@ -497,7 +497,7 @@ func (x *TlsConnection) ConnectAcceptCertificate(cb func(TlsConnection, uintptr,
497497 return cb(fa, PeerCertVarp, ErrorsVarp)
498498
499499 }
500- gobject.ObjectConnect(x.GoPointer(), "signal::accept-certificate", purego.NewCallback(fcb))
500+ return gobject.SignalConnect(x.GoPointer(), "accept-certificate", purego.NewCallback(fcb))
501501 }
502502
503503 func init() {
M v4/gio/gunixmounts.go +4 -4
@@ -370,7 +370,7 @@ func (c *UnixMountMonitor) SetGoPointer(ptr uintptr) {
370370 }
371371
372372 // Emitted when the unix mount points have changed.
373-func (x *UnixMountMonitor) ConnectMountpointsChanged(cb func(UnixMountMonitor)) {
373+func (x *UnixMountMonitor) ConnectMountpointsChanged(cb func(UnixMountMonitor)) uint32 {
374374 fcb := func(clsPtr uintptr) {
375375 fa := UnixMountMonitor{}
376376 fa.Ptr = clsPtr
@@ -378,11 +378,11 @@ func (x *UnixMountMonitor) ConnectMountpointsChanged(cb func(UnixMountMonitor))
378378 cb(fa)
379379
380380 }
381- gobject.ObjectConnect(x.GoPointer(), "signal::mountpoints-changed", purego.NewCallback(fcb))
381+ return gobject.SignalConnect(x.GoPointer(), "mountpoints-changed", purego.NewCallback(fcb))
382382 }
383383
384384 // Emitted when the unix mounts have changed.
385-func (x *UnixMountMonitor) ConnectMountsChanged(cb func(UnixMountMonitor)) {
385+func (x *UnixMountMonitor) ConnectMountsChanged(cb func(UnixMountMonitor)) uint32 {
386386 fcb := func(clsPtr uintptr) {
387387 fa := UnixMountMonitor{}
388388 fa.Ptr = clsPtr
@@ -390,7 +390,7 @@ func (x *UnixMountMonitor) ConnectMountsChanged(cb func(UnixMountMonitor)) {
390390 cb(fa)
391391
392392 }
393- gobject.ObjectConnect(x.GoPointer(), "signal::mounts-changed", purego.NewCallback(fcb))
393+ return gobject.SignalConnect(x.GoPointer(), "mounts-changed", purego.NewCallback(fcb))
394394 }
395395
396396 func init() {
M v4/gio/gvolumemonitor.go +24 -24
@@ -110,7 +110,7 @@ func (c *VolumeMonitor) SetGoPointer(ptr uintptr) {
110110 }
111111
112112 // Emitted when a drive changes.
113-func (x *VolumeMonitor) ConnectDriveChanged(cb func(VolumeMonitor, uintptr)) {
113+func (x *VolumeMonitor) ConnectDriveChanged(cb func(VolumeMonitor, uintptr)) uint32 {
114114 fcb := func(clsPtr uintptr, DriveVarp uintptr) {
115115 fa := VolumeMonitor{}
116116 fa.Ptr = clsPtr
@@ -118,11 +118,11 @@ func (x *VolumeMonitor) ConnectDriveChanged(cb func(VolumeMonitor, uintptr)) {
118118 cb(fa, DriveVarp)
119119
120120 }
121- gobject.ObjectConnect(x.GoPointer(), "signal::drive-changed", purego.NewCallback(fcb))
121+ return gobject.SignalConnect(x.GoPointer(), "drive-changed", purego.NewCallback(fcb))
122122 }
123123
124124 // Emitted when a drive is connected to the system.
125-func (x *VolumeMonitor) ConnectDriveConnected(cb func(VolumeMonitor, uintptr)) {
125+func (x *VolumeMonitor) ConnectDriveConnected(cb func(VolumeMonitor, uintptr)) uint32 {
126126 fcb := func(clsPtr uintptr, DriveVarp uintptr) {
127127 fa := VolumeMonitor{}
128128 fa.Ptr = clsPtr
@@ -130,11 +130,11 @@ func (x *VolumeMonitor) ConnectDriveConnected(cb func(VolumeMonitor, uintptr)) {
130130 cb(fa, DriveVarp)
131131
132132 }
133- gobject.ObjectConnect(x.GoPointer(), "signal::drive-connected", purego.NewCallback(fcb))
133+ return gobject.SignalConnect(x.GoPointer(), "drive-connected", purego.NewCallback(fcb))
134134 }
135135
136136 // Emitted when a drive is disconnected from the system.
137-func (x *VolumeMonitor) ConnectDriveDisconnected(cb func(VolumeMonitor, uintptr)) {
137+func (x *VolumeMonitor) ConnectDriveDisconnected(cb func(VolumeMonitor, uintptr)) uint32 {
138138 fcb := func(clsPtr uintptr, DriveVarp uintptr) {
139139 fa := VolumeMonitor{}
140140 fa.Ptr = clsPtr
@@ -142,11 +142,11 @@ func (x *VolumeMonitor) ConnectDriveDisconnected(cb func(VolumeMonitor, uintptr)
142142 cb(fa, DriveVarp)
143143
144144 }
145- gobject.ObjectConnect(x.GoPointer(), "signal::drive-disconnected", purego.NewCallback(fcb))
145+ return gobject.SignalConnect(x.GoPointer(), "drive-disconnected", purego.NewCallback(fcb))
146146 }
147147
148148 // Emitted when the eject button is pressed on @drive.
149-func (x *VolumeMonitor) ConnectDriveEjectButton(cb func(VolumeMonitor, uintptr)) {
149+func (x *VolumeMonitor) ConnectDriveEjectButton(cb func(VolumeMonitor, uintptr)) uint32 {
150150 fcb := func(clsPtr uintptr, DriveVarp uintptr) {
151151 fa := VolumeMonitor{}
152152 fa.Ptr = clsPtr
@@ -154,11 +154,11 @@ func (x *VolumeMonitor) ConnectDriveEjectButton(cb func(VolumeMonitor, uintptr))
154154 cb(fa, DriveVarp)
155155
156156 }
157- gobject.ObjectConnect(x.GoPointer(), "signal::drive-eject-button", purego.NewCallback(fcb))
157+ return gobject.SignalConnect(x.GoPointer(), "drive-eject-button", purego.NewCallback(fcb))
158158 }
159159
160160 // Emitted when the stop button is pressed on @drive.
161-func (x *VolumeMonitor) ConnectDriveStopButton(cb func(VolumeMonitor, uintptr)) {
161+func (x *VolumeMonitor) ConnectDriveStopButton(cb func(VolumeMonitor, uintptr)) uint32 {
162162 fcb := func(clsPtr uintptr, DriveVarp uintptr) {
163163 fa := VolumeMonitor{}
164164 fa.Ptr = clsPtr
@@ -166,11 +166,11 @@ func (x *VolumeMonitor) ConnectDriveStopButton(cb func(VolumeMonitor, uintptr))
166166 cb(fa, DriveVarp)
167167
168168 }
169- gobject.ObjectConnect(x.GoPointer(), "signal::drive-stop-button", purego.NewCallback(fcb))
169+ return gobject.SignalConnect(x.GoPointer(), "drive-stop-button", purego.NewCallback(fcb))
170170 }
171171
172172 // Emitted when a mount is added.
173-func (x *VolumeMonitor) ConnectMountAdded(cb func(VolumeMonitor, uintptr)) {
173+func (x *VolumeMonitor) ConnectMountAdded(cb func(VolumeMonitor, uintptr)) uint32 {
174174 fcb := func(clsPtr uintptr, MountVarp uintptr) {
175175 fa := VolumeMonitor{}
176176 fa.Ptr = clsPtr
@@ -178,11 +178,11 @@ func (x *VolumeMonitor) ConnectMountAdded(cb func(VolumeMonitor, uintptr)) {
178178 cb(fa, MountVarp)
179179
180180 }
181- gobject.ObjectConnect(x.GoPointer(), "signal::mount-added", purego.NewCallback(fcb))
181+ return gobject.SignalConnect(x.GoPointer(), "mount-added", purego.NewCallback(fcb))
182182 }
183183
184184 // Emitted when a mount changes.
185-func (x *VolumeMonitor) ConnectMountChanged(cb func(VolumeMonitor, uintptr)) {
185+func (x *VolumeMonitor) ConnectMountChanged(cb func(VolumeMonitor, uintptr)) uint32 {
186186 fcb := func(clsPtr uintptr, MountVarp uintptr) {
187187 fa := VolumeMonitor{}
188188 fa.Ptr = clsPtr
@@ -190,14 +190,14 @@ func (x *VolumeMonitor) ConnectMountChanged(cb func(VolumeMonitor, uintptr)) {
190190 cb(fa, MountVarp)
191191
192192 }
193- gobject.ObjectConnect(x.GoPointer(), "signal::mount-changed", purego.NewCallback(fcb))
193+ return gobject.SignalConnect(x.GoPointer(), "mount-changed", purego.NewCallback(fcb))
194194 }
195195
196196 // May be emitted when a mount is about to be removed.
197197 //
198198 // This signal depends on the backend and is only emitted if
199199 // GIO was used to unmount.
200-func (x *VolumeMonitor) ConnectMountPreUnmount(cb func(VolumeMonitor, uintptr)) {
200+func (x *VolumeMonitor) ConnectMountPreUnmount(cb func(VolumeMonitor, uintptr)) uint32 {
201201 fcb := func(clsPtr uintptr, MountVarp uintptr) {
202202 fa := VolumeMonitor{}
203203 fa.Ptr = clsPtr
@@ -205,11 +205,11 @@ func (x *VolumeMonitor) ConnectMountPreUnmount(cb func(VolumeMonitor, uintptr))
205205 cb(fa, MountVarp)
206206
207207 }
208- gobject.ObjectConnect(x.GoPointer(), "signal::mount-pre-unmount", purego.NewCallback(fcb))
208+ return gobject.SignalConnect(x.GoPointer(), "mount-pre-unmount", purego.NewCallback(fcb))
209209 }
210210
211211 // Emitted when a mount is removed.
212-func (x *VolumeMonitor) ConnectMountRemoved(cb func(VolumeMonitor, uintptr)) {
212+func (x *VolumeMonitor) ConnectMountRemoved(cb func(VolumeMonitor, uintptr)) uint32 {
213213 fcb := func(clsPtr uintptr, MountVarp uintptr) {
214214 fa := VolumeMonitor{}
215215 fa.Ptr = clsPtr
@@ -217,11 +217,11 @@ func (x *VolumeMonitor) ConnectMountRemoved(cb func(VolumeMonitor, uintptr)) {
217217 cb(fa, MountVarp)
218218
219219 }
220- gobject.ObjectConnect(x.GoPointer(), "signal::mount-removed", purego.NewCallback(fcb))
220+ return gobject.SignalConnect(x.GoPointer(), "mount-removed", purego.NewCallback(fcb))
221221 }
222222
223223 // Emitted when a mountable volume is added to the system.
224-func (x *VolumeMonitor) ConnectVolumeAdded(cb func(VolumeMonitor, uintptr)) {
224+func (x *VolumeMonitor) ConnectVolumeAdded(cb func(VolumeMonitor, uintptr)) uint32 {
225225 fcb := func(clsPtr uintptr, VolumeVarp uintptr) {
226226 fa := VolumeMonitor{}
227227 fa.Ptr = clsPtr
@@ -229,11 +229,11 @@ func (x *VolumeMonitor) ConnectVolumeAdded(cb func(VolumeMonitor, uintptr)) {
229229 cb(fa, VolumeVarp)
230230
231231 }
232- gobject.ObjectConnect(x.GoPointer(), "signal::volume-added", purego.NewCallback(fcb))
232+ return gobject.SignalConnect(x.GoPointer(), "volume-added", purego.NewCallback(fcb))
233233 }
234234
235235 // Emitted when mountable volume is changed.
236-func (x *VolumeMonitor) ConnectVolumeChanged(cb func(VolumeMonitor, uintptr)) {
236+func (x *VolumeMonitor) ConnectVolumeChanged(cb func(VolumeMonitor, uintptr)) uint32 {
237237 fcb := func(clsPtr uintptr, VolumeVarp uintptr) {
238238 fa := VolumeMonitor{}
239239 fa.Ptr = clsPtr
@@ -241,11 +241,11 @@ func (x *VolumeMonitor) ConnectVolumeChanged(cb func(VolumeMonitor, uintptr)) {
241241 cb(fa, VolumeVarp)
242242
243243 }
244- gobject.ObjectConnect(x.GoPointer(), "signal::volume-changed", purego.NewCallback(fcb))
244+ return gobject.SignalConnect(x.GoPointer(), "volume-changed", purego.NewCallback(fcb))
245245 }
246246
247247 // Emitted when a mountable volume is removed from the system.
248-func (x *VolumeMonitor) ConnectVolumeRemoved(cb func(VolumeMonitor, uintptr)) {
248+func (x *VolumeMonitor) ConnectVolumeRemoved(cb func(VolumeMonitor, uintptr)) uint32 {
249249 fcb := func(clsPtr uintptr, VolumeVarp uintptr) {
250250 fa := VolumeMonitor{}
251251 fa.Ptr = clsPtr
@@ -253,7 +253,7 @@ func (x *VolumeMonitor) ConnectVolumeRemoved(cb func(VolumeMonitor, uintptr)) {
253253 cb(fa, VolumeVarp)
254254
255255 }
256- gobject.ObjectConnect(x.GoPointer(), "signal::volume-removed", purego.NewCallback(fcb))
256+ return gobject.SignalConnect(x.GoPointer(), "volume-removed", purego.NewCallback(fcb))
257257 }
258258
259259 func init() {
M v4/gobject/gobject-2.0.go +4 -4
@@ -654,7 +654,7 @@ func (c *SignalGroup) SetGoPointer(ptr uintptr) {
654654 // other than %NULL. It is similar to #GObject::notify on `target` except it
655655 // will not emit when #GSignalGroup:target is %NULL and also allows for
656656 // receiving the #GObject without a data-race.
657-func (x *SignalGroup) ConnectBind(cb func(SignalGroup, uintptr)) {
657+func (x *SignalGroup) ConnectBind(cb func(SignalGroup, uintptr)) uint32 {
658658 fcb := func(clsPtr uintptr, InstanceVarp uintptr) {
659659 fa := SignalGroup{}
660660 fa.Ptr = clsPtr
@@ -662,7 +662,7 @@ func (x *SignalGroup) ConnectBind(cb func(SignalGroup, uintptr)) {
662662 cb(fa, InstanceVarp)
663663
664664 }
665- ObjectConnect(x.GoPointer(), "signal::bind", purego.NewCallback(fcb))
665+ return SignalConnect(x.GoPointer(), "bind", purego.NewCallback(fcb))
666666 }
667667
668668 // This signal is emitted when the target instance of @self is set to a
@@ -670,7 +670,7 @@ func (x *SignalGroup) ConnectBind(cb func(SignalGroup, uintptr)) {
670670 //
671671 // This signal will only be emitted if the previous target of @self is
672672 // non-%NULL.
673-func (x *SignalGroup) ConnectUnbind(cb func(SignalGroup)) {
673+func (x *SignalGroup) ConnectUnbind(cb func(SignalGroup)) uint32 {
674674 fcb := func(clsPtr uintptr) {
675675 fa := SignalGroup{}
676676 fa.Ptr = clsPtr
@@ -678,7 +678,7 @@ func (x *SignalGroup) ConnectUnbind(cb func(SignalGroup)) {
678678 cb(fa)
679679
680680 }
681- ObjectConnect(x.GoPointer(), "signal::unbind", purego.NewCallback(fcb))
681+ return SignalConnect(x.GoPointer(), "unbind", purego.NewCallback(fcb))
682682 }
683683
684684 func init() {
M v4/gobject/gobject.go +2 -2
@@ -1255,7 +1255,7 @@ func (c *Object) SetGoPointer(ptr uintptr) {
12551255 // It is important to note that you must use
12561256 // [canonical parameter names][canonical-parameter-names] as
12571257 // detail strings for the notify signal.
1258-func (x *Object) ConnectNotify(cb func(Object, uintptr)) {
1258+func (x *Object) ConnectNotify(cb func(Object, uintptr)) uint32 {
12591259 fcb := func(clsPtr uintptr, PspecVarp uintptr) {
12601260 fa := Object{}
12611261 fa.Ptr = clsPtr
@@ -1263,7 +1263,7 @@ func (x *Object) ConnectNotify(cb func(Object, uintptr)) {
12631263 cb(fa, PspecVarp)
12641264
12651265 }
1266- ObjectConnect(x.GoPointer(), "signal::notify", purego.NewCallback(fcb))
1266+ return SignalConnect(x.GoPointer(), "notify", purego.NewCallback(fcb))
12671267 }
12681268
12691269 func init() {
M v4/gobject/more.go +10 -2
@@ -30,14 +30,22 @@ func IncreaseRef(a uintptr) {
3030 xObjectRefSink(a)
3131 }
3232
33-func ObjectConnect(a uintptr, b string, c ...interface{}) uintptr {
34- return xObjectConnect(a, b, c...)
33+func SignalConnect(a uintptr, b string, c uintptr) uint32 {
34+ return xSignalConnectData(a, b, c, 0, 0, 0)
3535 }
3636
3737 func (o Object) Cast(v Ptr) {
3838 v.SetGoPointer(o.GoPointer())
3939 }
4040
41+func (o Object) ConnectSignal(signal string, cb func()) uint32 {
42+ return SignalConnect(o.GoPointer(), signal, purego.NewCallback(cb))
43+}
44+
45+func (o Object) DisconnectSignal(handler uint32) {
46+ SignalHandlerDisconnect(&o, handler)
47+}
48+
4149 // NewCallback is an alias to purego.NewCallback
4250 func NewCallback(fn interface{}) uintptr {
4351 return purego.NewCallback(fn)
M v4/gtk/gtkaboutdialog.go +2 -2
@@ -508,7 +508,7 @@ func (c *AboutDialog) SetGoPointer(ptr uintptr) {
508508 //
509509 // Applications may connect to it to override the default behaviour,
510510 // which is to call [func@Gtk.show_uri].
511-func (x *AboutDialog) ConnectActivateLink(cb func(AboutDialog, string) bool) {
511+func (x *AboutDialog) ConnectActivateLink(cb func(AboutDialog, string) bool) uint32 {
512512 fcb := func(clsPtr uintptr, UriVarp string) bool {
513513 fa := AboutDialog{}
514514 fa.Ptr = clsPtr
@@ -516,7 +516,7 @@ func (x *AboutDialog) ConnectActivateLink(cb func(AboutDialog, string) bool) {
516516 return cb(fa, UriVarp)
517517
518518 }
519- gobject.ObjectConnect(x.GoPointer(), "signal::activate-link", purego.NewCallback(fcb))
519+ return gobject.SignalConnect(x.GoPointer(), "activate-link", purego.NewCallback(fcb))
520520 }
521521
522522 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkadjustment.go +4 -4
@@ -250,7 +250,7 @@ func (c *Adjustment) SetGoPointer(ptr uintptr) {
250250 //
251251 // Note that the [property@Gtk.Adjustment:value] property is
252252 // covered by the [signal@Gtk.Adjustment::value-changed] signal.
253-func (x *Adjustment) ConnectChanged(cb func(Adjustment)) {
253+func (x *Adjustment) ConnectChanged(cb func(Adjustment)) uint32 {
254254 fcb := func(clsPtr uintptr) {
255255 fa := Adjustment{}
256256 fa.Ptr = clsPtr
@@ -258,11 +258,11 @@ func (x *Adjustment) ConnectChanged(cb func(Adjustment)) {
258258 cb(fa)
259259
260260 }
261- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
261+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
262262 }
263263
264264 // Emitted when the value has been changed.
265-func (x *Adjustment) ConnectValueChanged(cb func(Adjustment)) {
265+func (x *Adjustment) ConnectValueChanged(cb func(Adjustment)) uint32 {
266266 fcb := func(clsPtr uintptr) {
267267 fa := Adjustment{}
268268 fa.Ptr = clsPtr
@@ -270,7 +270,7 @@ func (x *Adjustment) ConnectValueChanged(cb func(Adjustment)) {
270270 cb(fa)
271271
272272 }
273- gobject.ObjectConnect(x.GoPointer(), "signal::value-changed", purego.NewCallback(fcb))
273+ return gobject.SignalConnect(x.GoPointer(), "value-changed", purego.NewCallback(fcb))
274274 }
275275
276276 func init() {
M v4/gtk/gtkappchooserbutton.go +6 -6
@@ -194,7 +194,7 @@ func (c *AppChooserButton) SetGoPointer(ptr uintptr) {
194194 //
195195 // The `::activate` signal on `GtkAppChooserButton` is an action signal and
196196 // emitting it causes the button to pop up its dialog.
197-func (x *AppChooserButton) ConnectActivate(cb func(AppChooserButton)) {
197+func (x *AppChooserButton) ConnectActivate(cb func(AppChooserButton)) uint32 {
198198 fcb := func(clsPtr uintptr) {
199199 fa := AppChooserButton{}
200200 fa.Ptr = clsPtr
@@ -202,11 +202,11 @@ func (x *AppChooserButton) ConnectActivate(cb func(AppChooserButton)) {
202202 cb(fa)
203203
204204 }
205- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
205+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
206206 }
207207
208208 // Emitted when the active application changes.
209-func (x *AppChooserButton) ConnectChanged(cb func(AppChooserButton)) {
209+func (x *AppChooserButton) ConnectChanged(cb func(AppChooserButton)) uint32 {
210210 fcb := func(clsPtr uintptr) {
211211 fa := AppChooserButton{}
212212 fa.Ptr = clsPtr
@@ -214,14 +214,14 @@ func (x *AppChooserButton) ConnectChanged(cb func(AppChooserButton)) {
214214 cb(fa)
215215
216216 }
217- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
217+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
218218 }
219219
220220 // Emitted when a custom item is activated.
221221 //
222222 // Use [method@Gtk.AppChooserButton.append_custom_item],
223223 // to add custom items.
224-func (x *AppChooserButton) ConnectCustomItemActivated(cb func(AppChooserButton, string)) {
224+func (x *AppChooserButton) ConnectCustomItemActivated(cb func(AppChooserButton, string)) uint32 {
225225 fcb := func(clsPtr uintptr, ItemNameVarp string) {
226226 fa := AppChooserButton{}
227227 fa.Ptr = clsPtr
@@ -229,7 +229,7 @@ func (x *AppChooserButton) ConnectCustomItemActivated(cb func(AppChooserButton,
229229 cb(fa, ItemNameVarp)
230230
231231 }
232- gobject.ObjectConnect(x.GoPointer(), "signal::custom-item-activated", purego.NewCallback(fcb))
232+ return gobject.SignalConnect(x.GoPointer(), "custom-item-activated", purego.NewCallback(fcb))
233233 }
234234
235235 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkappchooserwidget.go +4 -4
@@ -192,7 +192,7 @@ func (c *AppChooserWidget) SetGoPointer(ptr uintptr) {
192192 // This usually happens when the user double clicks an item, or an item
193193 // is selected and the user presses one of the keys Space, Shift+Space,
194194 // Return or Enter.
195-func (x *AppChooserWidget) ConnectApplicationActivated(cb func(AppChooserWidget, uintptr)) {
195+func (x *AppChooserWidget) ConnectApplicationActivated(cb func(AppChooserWidget, uintptr)) uint32 {
196196 fcb := func(clsPtr uintptr, ApplicationVarp uintptr) {
197197 fa := AppChooserWidget{}
198198 fa.Ptr = clsPtr
@@ -200,11 +200,11 @@ func (x *AppChooserWidget) ConnectApplicationActivated(cb func(AppChooserWidget,
200200 cb(fa, ApplicationVarp)
201201
202202 }
203- gobject.ObjectConnect(x.GoPointer(), "signal::application-activated", purego.NewCallback(fcb))
203+ return gobject.SignalConnect(x.GoPointer(), "application-activated", purego.NewCallback(fcb))
204204 }
205205
206206 // Emitted when an application item is selected from the widget's list.
207-func (x *AppChooserWidget) ConnectApplicationSelected(cb func(AppChooserWidget, uintptr)) {
207+func (x *AppChooserWidget) ConnectApplicationSelected(cb func(AppChooserWidget, uintptr)) uint32 {
208208 fcb := func(clsPtr uintptr, ApplicationVarp uintptr) {
209209 fa := AppChooserWidget{}
210210 fa.Ptr = clsPtr
@@ -212,7 +212,7 @@ func (x *AppChooserWidget) ConnectApplicationSelected(cb func(AppChooserWidget,
212212 cb(fa, ApplicationVarp)
213213
214214 }
215- gobject.ObjectConnect(x.GoPointer(), "signal::application-selected", purego.NewCallback(fcb))
215+ return gobject.SignalConnect(x.GoPointer(), "application-selected", purego.NewCallback(fcb))
216216 }
217217
218218 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkapplication.go +6 -6
@@ -426,7 +426,7 @@ func (c *Application) SetGoPointer(ptr uintptr) {
426426 // is `TRUE`. Applications can connect to this signal and call
427427 // [method@Gtk.Application.inhibit] with `GTK_APPLICATION_INHIBIT_LOGOUT`
428428 // to delay the end of the session until state has been saved.
429-func (x *Application) ConnectQueryEnd(cb func(Application)) {
429+func (x *Application) ConnectQueryEnd(cb func(Application)) uint32 {
430430 fcb := func(clsPtr uintptr) {
431431 fa := Application{}
432432 fa.Ptr = clsPtr
@@ -434,12 +434,12 @@ func (x *Application) ConnectQueryEnd(cb func(Application)) {
434434 cb(fa)
435435
436436 }
437- gobject.ObjectConnect(x.GoPointer(), "signal::query-end", purego.NewCallback(fcb))
437+ return gobject.SignalConnect(x.GoPointer(), "query-end", purego.NewCallback(fcb))
438438 }
439439
440440 // Emitted when a [class@Gtk.Window] is added to `application` through
441441 // [method@Gtk.Application.add_window].
442-func (x *Application) ConnectWindowAdded(cb func(Application, uintptr)) {
442+func (x *Application) ConnectWindowAdded(cb func(Application, uintptr)) uint32 {
443443 fcb := func(clsPtr uintptr, WindowVarp uintptr) {
444444 fa := Application{}
445445 fa.Ptr = clsPtr
@@ -447,14 +447,14 @@ func (x *Application) ConnectWindowAdded(cb func(Application, uintptr)) {
447447 cb(fa, WindowVarp)
448448
449449 }
450- gobject.ObjectConnect(x.GoPointer(), "signal::window-added", purego.NewCallback(fcb))
450+ return gobject.SignalConnect(x.GoPointer(), "window-added", purego.NewCallback(fcb))
451451 }
452452
453453 // Emitted when a [class@Gtk.Window] is removed from `application`.
454454 //
455455 // This can happen as a side-effect of the window being destroyed
456456 // or explicitly through [method@Gtk.Application.remove_window].
457-func (x *Application) ConnectWindowRemoved(cb func(Application, uintptr)) {
457+func (x *Application) ConnectWindowRemoved(cb func(Application, uintptr)) uint32 {
458458 fcb := func(clsPtr uintptr, WindowVarp uintptr) {
459459 fa := Application{}
460460 fa.Ptr = clsPtr
@@ -462,7 +462,7 @@ func (x *Application) ConnectWindowRemoved(cb func(Application, uintptr)) {
462462 cb(fa, WindowVarp)
463463
464464 }
465- gobject.ObjectConnect(x.GoPointer(), "signal::window-removed", purego.NewCallback(fcb))
465+ return gobject.SignalConnect(x.GoPointer(), "window-removed", purego.NewCallback(fcb))
466466 }
467467
468468 // Emits the #GActionGroup::action-added signal on @action_group.
M v4/gtk/gtkassistant.go +10 -10
@@ -415,7 +415,7 @@ func (c *Assistant) SetGoPointer(ptr uintptr) {
415415 // %GTK_ASSISTANT_PAGE_PROGRESS after the confirmation page and handle
416416 // this operation within the [signal@Gtk.Assistant::prepare] signal of
417417 // the progress page.
418-func (x *Assistant) ConnectApply(cb func(Assistant)) {
418+func (x *Assistant) ConnectApply(cb func(Assistant)) uint32 {
419419 fcb := func(clsPtr uintptr) {
420420 fa := Assistant{}
421421 fa.Ptr = clsPtr
@@ -423,11 +423,11 @@ func (x *Assistant) ConnectApply(cb func(Assistant)) {
423423 cb(fa)
424424
425425 }
426- gobject.ObjectConnect(x.GoPointer(), "signal::apply", purego.NewCallback(fcb))
426+ return gobject.SignalConnect(x.GoPointer(), "apply", purego.NewCallback(fcb))
427427 }
428428
429429 // Emitted when then the cancel button is clicked.
430-func (x *Assistant) ConnectCancel(cb func(Assistant)) {
430+func (x *Assistant) ConnectCancel(cb func(Assistant)) uint32 {
431431 fcb := func(clsPtr uintptr) {
432432 fa := Assistant{}
433433 fa.Ptr = clsPtr
@@ -435,13 +435,13 @@ func (x *Assistant) ConnectCancel(cb func(Assistant)) {
435435 cb(fa)
436436
437437 }
438- gobject.ObjectConnect(x.GoPointer(), "signal::cancel", purego.NewCallback(fcb))
438+ return gobject.SignalConnect(x.GoPointer(), "cancel", purego.NewCallback(fcb))
439439 }
440440
441441 // Emitted either when the close button of a summary page is clicked,
442442 // or when the apply button in the last page in the flow (of type
443443 // %GTK_ASSISTANT_PAGE_CONFIRM) is clicked.
444-func (x *Assistant) ConnectClose(cb func(Assistant)) {
444+func (x *Assistant) ConnectClose(cb func(Assistant)) uint32 {
445445 fcb := func(clsPtr uintptr) {
446446 fa := Assistant{}
447447 fa.Ptr = clsPtr
@@ -449,11 +449,11 @@ func (x *Assistant) ConnectClose(cb func(Assistant)) {
449449 cb(fa)
450450
451451 }
452- gobject.ObjectConnect(x.GoPointer(), "signal::close", purego.NewCallback(fcb))
452+ return gobject.SignalConnect(x.GoPointer(), "close", purego.NewCallback(fcb))
453453 }
454454
455455 // The action signal for the Escape binding.
456-func (x *Assistant) ConnectEscape(cb func(Assistant)) {
456+func (x *Assistant) ConnectEscape(cb func(Assistant)) uint32 {
457457 fcb := func(clsPtr uintptr) {
458458 fa := Assistant{}
459459 fa.Ptr = clsPtr
@@ -461,7 +461,7 @@ func (x *Assistant) ConnectEscape(cb func(Assistant)) {
461461 cb(fa)
462462
463463 }
464- gobject.ObjectConnect(x.GoPointer(), "signal::escape", purego.NewCallback(fcb))
464+ return gobject.SignalConnect(x.GoPointer(), "escape", purego.NewCallback(fcb))
465465 }
466466
467467 // Emitted when a new page is set as the assistant's current page,
@@ -469,7 +469,7 @@ func (x *Assistant) ConnectEscape(cb func(Assistant)) {
469469 //
470470 // A handler for this signal can do any preparations which are
471471 // necessary before showing @page.
472-func (x *Assistant) ConnectPrepare(cb func(Assistant, uintptr)) {
472+func (x *Assistant) ConnectPrepare(cb func(Assistant, uintptr)) uint32 {
473473 fcb := func(clsPtr uintptr, PageVarp uintptr) {
474474 fa := Assistant{}
475475 fa.Ptr = clsPtr
@@ -477,7 +477,7 @@ func (x *Assistant) ConnectPrepare(cb func(Assistant, uintptr)) {
477477 cb(fa, PageVarp)
478478
479479 }
480- gobject.ObjectConnect(x.GoPointer(), "signal::prepare", purego.NewCallback(fcb))
480+ return gobject.SignalConnect(x.GoPointer(), "prepare", purego.NewCallback(fcb))
481481 }
482482
483483 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkatcontext.go +2 -2
@@ -83,7 +83,7 @@ func (c *ATContext) SetGoPointer(ptr uintptr) {
8383
8484 // Emitted when the attributes of the accessible for the
8585 // `GtkATContext` instance change.
86-func (x *ATContext) ConnectStateChange(cb func(ATContext)) {
86+func (x *ATContext) ConnectStateChange(cb func(ATContext)) uint32 {
8787 fcb := func(clsPtr uintptr) {
8888 fa := ATContext{}
8989 fa.Ptr = clsPtr
@@ -91,7 +91,7 @@ func (x *ATContext) ConnectStateChange(cb func(ATContext)) {
9191 cb(fa)
9292
9393 }
94- gobject.ObjectConnect(x.GoPointer(), "signal::state-change", purego.NewCallback(fcb))
94+ return gobject.SignalConnect(x.GoPointer(), "state-change", purego.NewCallback(fcb))
9595 }
9696
9797 func init() {
M v4/gtk/gtkbutton.go +4 -4
@@ -272,7 +272,7 @@ func (c *Button) SetGoPointer(ptr uintptr) {
272272 //
273273 // This is an action signal. Applications should never connect
274274 // to this signal, but use the [signal@Gtk.Button::clicked] signal.
275-func (x *Button) ConnectActivate(cb func(Button)) {
275+func (x *Button) ConnectActivate(cb func(Button)) uint32 {
276276 fcb := func(clsPtr uintptr) {
277277 fa := Button{}
278278 fa.Ptr = clsPtr
@@ -280,11 +280,11 @@ func (x *Button) ConnectActivate(cb func(Button)) {
280280 cb(fa)
281281
282282 }
283- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
283+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
284284 }
285285
286286 // Emitted when the button has been activated (pressed and released).
287-func (x *Button) ConnectClicked(cb func(Button)) {
287+func (x *Button) ConnectClicked(cb func(Button)) uint32 {
288288 fcb := func(clsPtr uintptr) {
289289 fa := Button{}
290290 fa.Ptr = clsPtr
@@ -292,7 +292,7 @@ func (x *Button) ConnectClicked(cb func(Button)) {
292292 cb(fa)
293293
294294 }
295- gobject.ObjectConnect(x.GoPointer(), "signal::clicked", purego.NewCallback(fcb))
295+ return gobject.SignalConnect(x.GoPointer(), "clicked", purego.NewCallback(fcb))
296296 }
297297
298298 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkcalendar.go +10 -10
@@ -220,7 +220,7 @@ func (c *Calendar) SetGoPointer(ptr uintptr) {
220220 }
221221
222222 // Emitted when the user selects a day.
223-func (x *Calendar) ConnectDaySelected(cb func(Calendar)) {
223+func (x *Calendar) ConnectDaySelected(cb func(Calendar)) uint32 {
224224 fcb := func(clsPtr uintptr) {
225225 fa := Calendar{}
226226 fa.Ptr = clsPtr
@@ -228,11 +228,11 @@ func (x *Calendar) ConnectDaySelected(cb func(Calendar)) {
228228 cb(fa)
229229
230230 }
231- gobject.ObjectConnect(x.GoPointer(), "signal::day-selected", purego.NewCallback(fcb))
231+ return gobject.SignalConnect(x.GoPointer(), "day-selected", purego.NewCallback(fcb))
232232 }
233233
234234 // Emitted when the user switched to the next month.
235-func (x *Calendar) ConnectNextMonth(cb func(Calendar)) {
235+func (x *Calendar) ConnectNextMonth(cb func(Calendar)) uint32 {
236236 fcb := func(clsPtr uintptr) {
237237 fa := Calendar{}
238238 fa.Ptr = clsPtr
@@ -240,11 +240,11 @@ func (x *Calendar) ConnectNextMonth(cb func(Calendar)) {
240240 cb(fa)
241241
242242 }
243- gobject.ObjectConnect(x.GoPointer(), "signal::next-month", purego.NewCallback(fcb))
243+ return gobject.SignalConnect(x.GoPointer(), "next-month", purego.NewCallback(fcb))
244244 }
245245
246246 // Emitted when user switched to the next year.
247-func (x *Calendar) ConnectNextYear(cb func(Calendar)) {
247+func (x *Calendar) ConnectNextYear(cb func(Calendar)) uint32 {
248248 fcb := func(clsPtr uintptr) {
249249 fa := Calendar{}
250250 fa.Ptr = clsPtr
@@ -252,11 +252,11 @@ func (x *Calendar) ConnectNextYear(cb func(Calendar)) {
252252 cb(fa)
253253
254254 }
255- gobject.ObjectConnect(x.GoPointer(), "signal::next-year", purego.NewCallback(fcb))
255+ return gobject.SignalConnect(x.GoPointer(), "next-year", purego.NewCallback(fcb))
256256 }
257257
258258 // Emitted when the user switched to the previous month.
259-func (x *Calendar) ConnectPrevMonth(cb func(Calendar)) {
259+func (x *Calendar) ConnectPrevMonth(cb func(Calendar)) uint32 {
260260 fcb := func(clsPtr uintptr) {
261261 fa := Calendar{}
262262 fa.Ptr = clsPtr
@@ -264,11 +264,11 @@ func (x *Calendar) ConnectPrevMonth(cb func(Calendar)) {
264264 cb(fa)
265265
266266 }
267- gobject.ObjectConnect(x.GoPointer(), "signal::prev-month", purego.NewCallback(fcb))
267+ return gobject.SignalConnect(x.GoPointer(), "prev-month", purego.NewCallback(fcb))
268268 }
269269
270270 // Emitted when user switched to the previous year.
271-func (x *Calendar) ConnectPrevYear(cb func(Calendar)) {
271+func (x *Calendar) ConnectPrevYear(cb func(Calendar)) uint32 {
272272 fcb := func(clsPtr uintptr) {
273273 fa := Calendar{}
274274 fa.Ptr = clsPtr
@@ -276,7 +276,7 @@ func (x *Calendar) ConnectPrevYear(cb func(Calendar)) {
276276 cb(fa)
277277
278278 }
279- gobject.ObjectConnect(x.GoPointer(), "signal::prev-year", purego.NewCallback(fcb))
279+ return gobject.SignalConnect(x.GoPointer(), "prev-year", purego.NewCallback(fcb))
280280 }
281281
282282 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkcellarea.go +8 -8
@@ -931,7 +931,7 @@ func (c *CellArea) SetGoPointer(ptr uintptr) {
931931
932932 // Indicates that editing has started on @renderer and that @editable
933933 // should be added to the owning cell-layouting widget at @cell_area.
934-func (x *CellArea) ConnectAddEditable(cb func(CellArea, uintptr, uintptr, uintptr, string)) {
934+func (x *CellArea) ConnectAddEditable(cb func(CellArea, uintptr, uintptr, uintptr, string)) uint32 {
935935 fcb := func(clsPtr uintptr, RendererVarp uintptr, EditableVarp uintptr, CellAreaVarp uintptr, PathVarp string) {
936936 fa := CellArea{}
937937 fa.Ptr = clsPtr
@@ -939,11 +939,11 @@ func (x *CellArea) ConnectAddEditable(cb func(CellArea, uintptr, uintptr, uintpt
939939 cb(fa, RendererVarp, EditableVarp, CellAreaVarp, PathVarp)
940940
941941 }
942- gobject.ObjectConnect(x.GoPointer(), "signal::add-editable", purego.NewCallback(fcb))
942+ return gobject.SignalConnect(x.GoPointer(), "add-editable", purego.NewCallback(fcb))
943943 }
944944
945945 // This signal is emitted whenever applying attributes to @area from @model
946-func (x *CellArea) ConnectApplyAttributes(cb func(CellArea, uintptr, uintptr, bool, bool)) {
946+func (x *CellArea) ConnectApplyAttributes(cb func(CellArea, uintptr, uintptr, bool, bool)) uint32 {
947947 fcb := func(clsPtr uintptr, ModelVarp uintptr, IterVarp uintptr, IsExpanderVarp bool, IsExpandedVarp bool) {
948948 fa := CellArea{}
949949 fa.Ptr = clsPtr
@@ -951,7 +951,7 @@ func (x *CellArea) ConnectApplyAttributes(cb func(CellArea, uintptr, uintptr, bo
951951 cb(fa, ModelVarp, IterVarp, IsExpanderVarp, IsExpandedVarp)
952952
953953 }
954- gobject.ObjectConnect(x.GoPointer(), "signal::apply-attributes", purego.NewCallback(fcb))
954+ return gobject.SignalConnect(x.GoPointer(), "apply-attributes", purego.NewCallback(fcb))
955955 }
956956
957957 // Indicates that focus changed on this @area. This signal
@@ -962,7 +962,7 @@ func (x *CellArea) ConnectApplyAttributes(cb func(CellArea, uintptr, uintptr, bo
962962 // currently focused renderer did not change, this is
963963 // because focus may change to the same renderer in the
964964 // same cell area for a different row of data.
965-func (x *CellArea) ConnectFocusChanged(cb func(CellArea, uintptr, string)) {
965+func (x *CellArea) ConnectFocusChanged(cb func(CellArea, uintptr, string)) uint32 {
966966 fcb := func(clsPtr uintptr, RendererVarp uintptr, PathVarp string) {
967967 fa := CellArea{}
968968 fa.Ptr = clsPtr
@@ -970,12 +970,12 @@ func (x *CellArea) ConnectFocusChanged(cb func(CellArea, uintptr, string)) {
970970 cb(fa, RendererVarp, PathVarp)
971971
972972 }
973- gobject.ObjectConnect(x.GoPointer(), "signal::focus-changed", purego.NewCallback(fcb))
973+ return gobject.SignalConnect(x.GoPointer(), "focus-changed", purego.NewCallback(fcb))
974974 }
975975
976976 // Indicates that editing finished on @renderer and that @editable
977977 // should be removed from the owning cell-layouting widget.
978-func (x *CellArea) ConnectRemoveEditable(cb func(CellArea, uintptr, uintptr)) {
978+func (x *CellArea) ConnectRemoveEditable(cb func(CellArea, uintptr, uintptr)) uint32 {
979979 fcb := func(clsPtr uintptr, RendererVarp uintptr, EditableVarp uintptr) {
980980 fa := CellArea{}
981981 fa.Ptr = clsPtr
@@ -983,7 +983,7 @@ func (x *CellArea) ConnectRemoveEditable(cb func(CellArea, uintptr, uintptr)) {
983983 cb(fa, RendererVarp, EditableVarp)
984984
985985 }
986- gobject.ObjectConnect(x.GoPointer(), "signal::remove-editable", purego.NewCallback(fcb))
986+ return gobject.SignalConnect(x.GoPointer(), "remove-editable", purego.NewCallback(fcb))
987987 }
988988
989989 // Gets the ID of the @buildable object.
M v4/gtk/gtkcellrenderer.go +4 -4
@@ -391,7 +391,7 @@ func (c *CellRenderer) SetGoPointer(ptr uintptr) {
391391 // editing when the user presses Escape.
392392 //
393393 // See also: gtk_cell_renderer_stop_editing().
394-func (x *CellRenderer) ConnectEditingCanceled(cb func(CellRenderer)) {
394+func (x *CellRenderer) ConnectEditingCanceled(cb func(CellRenderer)) uint32 {
395395 fcb := func(clsPtr uintptr) {
396396 fa := CellRenderer{}
397397 fa.Ptr = clsPtr
@@ -399,7 +399,7 @@ func (x *CellRenderer) ConnectEditingCanceled(cb func(CellRenderer)) {
399399 cb(fa)
400400
401401 }
402- gobject.ObjectConnect(x.GoPointer(), "signal::editing-canceled", purego.NewCallback(fcb))
402+ return gobject.SignalConnect(x.GoPointer(), "editing-canceled", purego.NewCallback(fcb))
403403 }
404404
405405 // This signal gets emitted when a cell starts to be edited.
@@ -434,7 +434,7 @@ func (x *CellRenderer) ConnectEditingCanceled(cb func(CellRenderer)) {
434434 // }
435435 //
436436 // ]|
437-func (x *CellRenderer) ConnectEditingStarted(cb func(CellRenderer, uintptr, string)) {
437+func (x *CellRenderer) ConnectEditingStarted(cb func(CellRenderer, uintptr, string)) uint32 {
438438 fcb := func(clsPtr uintptr, EditableVarp uintptr, PathVarp string) {
439439 fa := CellRenderer{}
440440 fa.Ptr = clsPtr
@@ -442,7 +442,7 @@ func (x *CellRenderer) ConnectEditingStarted(cb func(CellRenderer, uintptr, stri
442442 cb(fa, EditableVarp, PathVarp)
443443
444444 }
445- gobject.ObjectConnect(x.GoPointer(), "signal::editing-started", purego.NewCallback(fcb))
445+ return gobject.SignalConnect(x.GoPointer(), "editing-started", purego.NewCallback(fcb))
446446 }
447447
448448 func init() {
M v4/gtk/gtkcellrendereraccel.go +4 -4
@@ -60,7 +60,7 @@ func (c *CellRendererAccel) SetGoPointer(ptr uintptr) {
6060 }
6161
6262 // Gets emitted when the user has removed the accelerator.
63-func (x *CellRendererAccel) ConnectAccelCleared(cb func(CellRendererAccel, string)) {
63+func (x *CellRendererAccel) ConnectAccelCleared(cb func(CellRendererAccel, string)) uint32 {
6464 fcb := func(clsPtr uintptr, PathStringVarp string) {
6565 fa := CellRendererAccel{}
6666 fa.Ptr = clsPtr
@@ -68,11 +68,11 @@ func (x *CellRendererAccel) ConnectAccelCleared(cb func(CellRendererAccel, strin
6868 cb(fa, PathStringVarp)
6969
7070 }
71- gobject.ObjectConnect(x.GoPointer(), "signal::accel-cleared", purego.NewCallback(fcb))
71+ return gobject.SignalConnect(x.GoPointer(), "accel-cleared", purego.NewCallback(fcb))
7272 }
7373
7474 // Gets emitted when the user has selected a new accelerator.
75-func (x *CellRendererAccel) ConnectAccelEdited(cb func(CellRendererAccel, string, uint, gdk.ModifierType, uint)) {
75+func (x *CellRendererAccel) ConnectAccelEdited(cb func(CellRendererAccel, string, uint, gdk.ModifierType, uint)) uint32 {
7676 fcb := func(clsPtr uintptr, PathStringVarp string, AccelKeyVarp uint, AccelModsVarp gdk.ModifierType, HardwareKeycodeVarp uint) {
7777 fa := CellRendererAccel{}
7878 fa.Ptr = clsPtr
@@ -80,7 +80,7 @@ func (x *CellRendererAccel) ConnectAccelEdited(cb func(CellRendererAccel, string
8080 cb(fa, PathStringVarp, AccelKeyVarp, AccelModsVarp, HardwareKeycodeVarp)
8181
8282 }
83- gobject.ObjectConnect(x.GoPointer(), "signal::accel-edited", purego.NewCallback(fcb))
83+ return gobject.SignalConnect(x.GoPointer(), "accel-edited", purego.NewCallback(fcb))
8484 }
8585
8686 func init() {
M v4/gtk/gtkcellrenderercombo.go +2 -2
@@ -71,7 +71,7 @@ func (c *CellRendererCombo) SetGoPointer(ptr uintptr) {
7171 // the tree view will immediately cease the editing operating. This
7272 // means that you most probably want to refrain from changing the model
7373 // until the combo cell renderer emits the edited or editing_canceled signal.
74-func (x *CellRendererCombo) ConnectChanged(cb func(CellRendererCombo, string, uintptr)) {
74+func (x *CellRendererCombo) ConnectChanged(cb func(CellRendererCombo, string, uintptr)) uint32 {
7575 fcb := func(clsPtr uintptr, PathStringVarp string, NewIterVarp uintptr) {
7676 fa := CellRendererCombo{}
7777 fa.Ptr = clsPtr
@@ -79,7 +79,7 @@ func (x *CellRendererCombo) ConnectChanged(cb func(CellRendererCombo, string, ui
7979 cb(fa, PathStringVarp, NewIterVarp)
8080
8181 }
82- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
82+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
8383 }
8484
8585 func init() {
M v4/gtk/gtkcellrenderertext.go +2 -2
@@ -81,7 +81,7 @@ func (c *CellRendererText) SetGoPointer(ptr uintptr) {
8181 //
8282 // It is the responsibility of the application to update the model
8383 // and store @new_text at the position indicated by @path.
84-func (x *CellRendererText) ConnectEdited(cb func(CellRendererText, string, string)) {
84+func (x *CellRendererText) ConnectEdited(cb func(CellRendererText, string, string)) uint32 {
8585 fcb := func(clsPtr uintptr, PathVarp string, NewTextVarp string) {
8686 fa := CellRendererText{}
8787 fa.Ptr = clsPtr
@@ -89,7 +89,7 @@ func (x *CellRendererText) ConnectEdited(cb func(CellRendererText, string, strin
8989 cb(fa, PathVarp, NewTextVarp)
9090
9191 }
92- gobject.ObjectConnect(x.GoPointer(), "signal::edited", purego.NewCallback(fcb))
92+ return gobject.SignalConnect(x.GoPointer(), "edited", purego.NewCallback(fcb))
9393 }
9494
9595 func init() {
M v4/gtk/gtkcellrenderertoggle.go +2 -2
@@ -121,7 +121,7 @@ func (c *CellRendererToggle) SetGoPointer(ptr uintptr) {
121121 // It is the responsibility of the application to update the model
122122 // with the correct value to store at @path. Often this is simply the
123123 // opposite of the value currently stored at @path.
124-func (x *CellRendererToggle) ConnectToggled(cb func(CellRendererToggle, string)) {
124+func (x *CellRendererToggle) ConnectToggled(cb func(CellRendererToggle, string)) uint32 {
125125 fcb := func(clsPtr uintptr, PathVarp string) {
126126 fa := CellRendererToggle{}
127127 fa.Ptr = clsPtr
@@ -129,7 +129,7 @@ func (x *CellRendererToggle) ConnectToggled(cb func(CellRendererToggle, string))
129129 cb(fa, PathVarp)
130130
131131 }
132- gobject.ObjectConnect(x.GoPointer(), "signal::toggled", purego.NewCallback(fcb))
132+ return gobject.SignalConnect(x.GoPointer(), "toggled", purego.NewCallback(fcb))
133133 }
134134
135135 func init() {
M v4/gtk/gtkcheckbutton.go +4 -4
@@ -280,7 +280,7 @@ func (c *CheckButton) SetGoPointer(ptr uintptr) {
280280 //
281281 // Applications should never connect to this signal, but use the
282282 // [signal@Gtk.CheckButton::toggled] signal.
283-func (x *CheckButton) ConnectActivate(cb func(CheckButton)) {
283+func (x *CheckButton) ConnectActivate(cb func(CheckButton)) uint32 {
284284 fcb := func(clsPtr uintptr) {
285285 fa := CheckButton{}
286286 fa.Ptr = clsPtr
@@ -288,12 +288,12 @@ func (x *CheckButton) ConnectActivate(cb func(CheckButton)) {
288288 cb(fa)
289289
290290 }
291- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
291+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
292292 }
293293
294294 // Emitted when the buttons's [property@Gtk.CheckButton:active]
295295 // property changes.
296-func (x *CheckButton) ConnectToggled(cb func(CheckButton)) {
296+func (x *CheckButton) ConnectToggled(cb func(CheckButton)) uint32 {
297297 fcb := func(clsPtr uintptr) {
298298 fa := CheckButton{}
299299 fa.Ptr = clsPtr
@@ -301,7 +301,7 @@ func (x *CheckButton) ConnectToggled(cb func(CheckButton)) {
301301 cb(fa)
302302
303303 }
304- gobject.ObjectConnect(x.GoPointer(), "signal::toggled", purego.NewCallback(fcb))
304+ return gobject.SignalConnect(x.GoPointer(), "toggled", purego.NewCallback(fcb))
305305 }
306306
307307 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkcolorbutton.go +4 -4
@@ -126,7 +126,7 @@ func (c *ColorButton) SetGoPointer(ptr uintptr) {
126126 //
127127 // The `::activate` signal on `GtkMenuButton` is an action signal and
128128 // emitting it causes the button to pop up its dialog.
129-func (x *ColorButton) ConnectActivate(cb func(ColorButton)) {
129+func (x *ColorButton) ConnectActivate(cb func(ColorButton)) uint32 {
130130 fcb := func(clsPtr uintptr) {
131131 fa := ColorButton{}
132132 fa.Ptr = clsPtr
@@ -134,7 +134,7 @@ func (x *ColorButton) ConnectActivate(cb func(ColorButton)) {
134134 cb(fa)
135135
136136 }
137- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
137+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
138138 }
139139
140140 // Emitted when the user selects a color.
@@ -145,7 +145,7 @@ func (x *ColorButton) ConnectActivate(cb func(ColorButton)) {
145145 // Note that this signal is only emitted when the user changes the color.
146146 // If you need to react to programmatic color changes as well, use
147147 // the notify::rgba signal.
148-func (x *ColorButton) ConnectColorSet(cb func(ColorButton)) {
148+func (x *ColorButton) ConnectColorSet(cb func(ColorButton)) uint32 {
149149 fcb := func(clsPtr uintptr) {
150150 fa := ColorButton{}
151151 fa.Ptr = clsPtr
@@ -153,7 +153,7 @@ func (x *ColorButton) ConnectColorSet(cb func(ColorButton)) {
153153 cb(fa)
154154
155155 }
156- gobject.ObjectConnect(x.GoPointer(), "signal::color-set", purego.NewCallback(fcb))
156+ return gobject.SignalConnect(x.GoPointer(), "color-set", purego.NewCallback(fcb))
157157 }
158158
159159 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkcolumnview.go +2 -2
@@ -349,7 +349,7 @@ func (c *ColumnView) SetGoPointer(ptr uintptr) {
349349 // This allows for a convenient way to handle activation in a columnview.
350350 // See [method@Gtk.ListItem.set_activatable] for details on how to use this
351351 // signal.
352-func (x *ColumnView) ConnectActivate(cb func(ColumnView, uint)) {
352+func (x *ColumnView) ConnectActivate(cb func(ColumnView, uint)) uint32 {
353353 fcb := func(clsPtr uintptr, PositionVarp uint) {
354354 fa := ColumnView{}
355355 fa.Ptr = clsPtr
@@ -357,7 +357,7 @@ func (x *ColumnView) ConnectActivate(cb func(ColumnView, uint)) {
357357 cb(fa, PositionVarp)
358358
359359 }
360- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
360+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
361361 }
362362
363363 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkcombobox.go +12 -12
@@ -477,7 +477,7 @@ func (c *ComboBox) SetGoPointer(ptr uintptr) {
477477 //
478478 // The `::activate` signal on `GtkComboBox` is an action signal and
479479 // emitting it causes the combo box to pop up its dropdown.
480-func (x *ComboBox) ConnectActivate(cb func(ComboBox)) {
480+func (x *ComboBox) ConnectActivate(cb func(ComboBox)) uint32 {
481481 fcb := func(clsPtr uintptr) {
482482 fa := ComboBox{}
483483 fa.Ptr = clsPtr
@@ -485,7 +485,7 @@ func (x *ComboBox) ConnectActivate(cb func(ComboBox)) {
485485 cb(fa)
486486
487487 }
488- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
488+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
489489 }
490490
491491 // Emitted when the active item is changed.
@@ -493,7 +493,7 @@ func (x *ComboBox) ConnectActivate(cb func(ComboBox)) {
493493 // The can be due to the user selecting a different item from the list,
494494 // or due to a call to [method@Gtk.ComboBox.set_active_iter]. It will
495495 // also be emitted while typing into the entry of a combo box with an entry.
496-func (x *ComboBox) ConnectChanged(cb func(ComboBox)) {
496+func (x *ComboBox) ConnectChanged(cb func(ComboBox)) uint32 {
497497 fcb := func(clsPtr uintptr) {
498498 fa := ComboBox{}
499499 fa.Ptr = clsPtr
@@ -501,7 +501,7 @@ func (x *ComboBox) ConnectChanged(cb func(ComboBox)) {
501501 cb(fa)
502502
503503 }
504- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
504+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
505505 }
506506
507507 // Emitted to allow changing how the text in a combo box's entry is displayed.
@@ -538,7 +538,7 @@ func (x *ComboBox) ConnectChanged(cb func(ComboBox)) {
538538 // }
539539 //
540540 // ```
541-func (x *ComboBox) ConnectFormatEntryText(cb func(ComboBox, string) string) {
541+func (x *ComboBox) ConnectFormatEntryText(cb func(ComboBox, string) string) uint32 {
542542 fcb := func(clsPtr uintptr, PathVarp string) string {
543543 fa := ComboBox{}
544544 fa.Ptr = clsPtr
@@ -546,13 +546,13 @@ func (x *ComboBox) ConnectFormatEntryText(cb func(ComboBox, string) string) {
546546 return cb(fa, PathVarp)
547547
548548 }
549- gobject.ObjectConnect(x.GoPointer(), "signal::format-entry-text", purego.NewCallback(fcb))
549+ return gobject.SignalConnect(x.GoPointer(), "format-entry-text", purego.NewCallback(fcb))
550550 }
551551
552552 // Emitted to move the active selection.
553553 //
554554 // This is an [keybinding signal](class.SignalAction.html).
555-func (x *ComboBox) ConnectMoveActive(cb func(ComboBox, ScrollType)) {
555+func (x *ComboBox) ConnectMoveActive(cb func(ComboBox, ScrollType)) uint32 {
556556 fcb := func(clsPtr uintptr, ScrollTypeVarp ScrollType) {
557557 fa := ComboBox{}
558558 fa.Ptr = clsPtr
@@ -560,7 +560,7 @@ func (x *ComboBox) ConnectMoveActive(cb func(ComboBox, ScrollType)) {
560560 cb(fa, ScrollTypeVarp)
561561
562562 }
563- gobject.ObjectConnect(x.GoPointer(), "signal::move-active", purego.NewCallback(fcb))
563+ return gobject.SignalConnect(x.GoPointer(), "move-active", purego.NewCallback(fcb))
564564 }
565565
566566 // Emitted to popdown the combo box list.
@@ -568,7 +568,7 @@ func (x *ComboBox) ConnectMoveActive(cb func(ComboBox, ScrollType)) {
568568 // This is an [keybinding signal](class.SignalAction.html).
569569 //
570570 // The default bindings for this signal are Alt+Up and Escape.
571-func (x *ComboBox) ConnectPopdown(cb func(ComboBox) bool) {
571+func (x *ComboBox) ConnectPopdown(cb func(ComboBox) bool) uint32 {
572572 fcb := func(clsPtr uintptr) bool {
573573 fa := ComboBox{}
574574 fa.Ptr = clsPtr
@@ -576,7 +576,7 @@ func (x *ComboBox) ConnectPopdown(cb func(ComboBox) bool) {
576576 return cb(fa)
577577
578578 }
579- gobject.ObjectConnect(x.GoPointer(), "signal::popdown", purego.NewCallback(fcb))
579+ return gobject.SignalConnect(x.GoPointer(), "popdown", purego.NewCallback(fcb))
580580 }
581581
582582 // Emitted to popup the combo box list.
@@ -584,7 +584,7 @@ func (x *ComboBox) ConnectPopdown(cb func(ComboBox) bool) {
584584 // This is an [keybinding signal](class.SignalAction.html).
585585 //
586586 // The default binding for this signal is Alt+Down.
587-func (x *ComboBox) ConnectPopup(cb func(ComboBox)) {
587+func (x *ComboBox) ConnectPopup(cb func(ComboBox)) uint32 {
588588 fcb := func(clsPtr uintptr) {
589589 fa := ComboBox{}
590590 fa.Ptr = clsPtr
@@ -592,7 +592,7 @@ func (x *ComboBox) ConnectPopup(cb func(ComboBox)) {
592592 cb(fa)
593593
594594 }
595- gobject.ObjectConnect(x.GoPointer(), "signal::popup", purego.NewCallback(fcb))
595+ return gobject.SignalConnect(x.GoPointer(), "popup", purego.NewCallback(fcb))
596596 }
597597
598598 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkcssprovider.go +2 -2
@@ -163,7 +163,7 @@ func (c *CssProvider) SetGoPointer(ptr uintptr) {
163163 // Note that this signal may be emitted at any time as the css provider
164164 // may opt to defer parsing parts or all of the input to a later time
165165 // than when a loading function was called.
166-func (x *CssProvider) ConnectParsingError(cb func(CssProvider, uintptr, uintptr)) {
166+func (x *CssProvider) ConnectParsingError(cb func(CssProvider, uintptr, uintptr)) uint32 {
167167 fcb := func(clsPtr uintptr, SectionVarp uintptr, ErrorVarp uintptr) {
168168 fa := CssProvider{}
169169 fa.Ptr = clsPtr
@@ -171,7 +171,7 @@ func (x *CssProvider) ConnectParsingError(cb func(CssProvider, uintptr, uintptr)
171171 cb(fa, SectionVarp, ErrorVarp)
172172
173173 }
174- gobject.ObjectConnect(x.GoPointer(), "signal::parsing-error", purego.NewCallback(fcb))
174+ return gobject.SignalConnect(x.GoPointer(), "parsing-error", purego.NewCallback(fcb))
175175 }
176176
177177 func init() {
M v4/gtk/gtkdialog.go +4 -4
@@ -434,7 +434,7 @@ func (c *Dialog) SetGoPointer(ptr uintptr) {
434434 // This is a [keybinding signal](class.SignalAction.html).
435435 //
436436 // The default binding for this signal is the Escape key.
437-func (x *Dialog) ConnectClose(cb func(Dialog)) {
437+func (x *Dialog) ConnectClose(cb func(Dialog)) uint32 {
438438 fcb := func(clsPtr uintptr) {
439439 fa := Dialog{}
440440 fa.Ptr = clsPtr
@@ -442,7 +442,7 @@ func (x *Dialog) ConnectClose(cb func(Dialog)) {
442442 cb(fa)
443443
444444 }
445- gobject.ObjectConnect(x.GoPointer(), "signal::close", purego.NewCallback(fcb))
445+ return gobject.SignalConnect(x.GoPointer(), "close", purego.NewCallback(fcb))
446446 }
447447
448448 // Emitted when an action widget is clicked.
@@ -451,7 +451,7 @@ func (x *Dialog) ConnectClose(cb func(Dialog)) {
451451 // delete event, and when [method@Gtk.Dialog.response] is called.
452452 // On a delete event, the response ID is %GTK_RESPONSE_DELETE_EVENT.
453453 // Otherwise, it depends on which action widget was clicked.
454-func (x *Dialog) ConnectResponse(cb func(Dialog, int)) {
454+func (x *Dialog) ConnectResponse(cb func(Dialog, int)) uint32 {
455455 fcb := func(clsPtr uintptr, ResponseIdVarp int) {
456456 fa := Dialog{}
457457 fa.Ptr = clsPtr
@@ -459,7 +459,7 @@ func (x *Dialog) ConnectResponse(cb func(Dialog, int)) {
459459 cb(fa, ResponseIdVarp)
460460
461461 }
462- gobject.ObjectConnect(x.GoPointer(), "signal::response", purego.NewCallback(fcb))
462+ return gobject.SignalConnect(x.GoPointer(), "response", purego.NewCallback(fcb))
463463 }
464464
465465 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkdragsource.go +8 -8
@@ -238,7 +238,7 @@ func (c *DragSource) SetGoPointer(ptr uintptr) {
238238 //
239239 // It can be used to e.g. set a custom drag icon with
240240 // [method@Gtk.DragSource.set_icon].
241-func (x *DragSource) ConnectDragBegin(cb func(DragSource, uintptr)) {
241+func (x *DragSource) ConnectDragBegin(cb func(DragSource, uintptr)) uint32 {
242242 fcb := func(clsPtr uintptr, DragVarp uintptr) {
243243 fa := DragSource{}
244244 fa.Ptr = clsPtr
@@ -246,7 +246,7 @@ func (x *DragSource) ConnectDragBegin(cb func(DragSource, uintptr)) {
246246 cb(fa, DragVarp)
247247
248248 }
249- gobject.ObjectConnect(x.GoPointer(), "signal::drag-begin", purego.NewCallback(fcb))
249+ return gobject.SignalConnect(x.GoPointer(), "drag-begin", purego.NewCallback(fcb))
250250 }
251251
252252 // Emitted on the drag source when a drag has failed.
@@ -254,7 +254,7 @@ func (x *DragSource) ConnectDragBegin(cb func(DragSource, uintptr)) {
254254 // The signal handler may handle a failed drag operation based on
255255 // the type of error. It should return %TRUE if the failure has been handled
256256 // and the default "drag operation failed" animation should not be shown.
257-func (x *DragSource) ConnectDragCancel(cb func(DragSource, uintptr, gdk.DragCancelReason) bool) {
257+func (x *DragSource) ConnectDragCancel(cb func(DragSource, uintptr, gdk.DragCancelReason) bool) uint32 {
258258 fcb := func(clsPtr uintptr, DragVarp uintptr, ReasonVarp gdk.DragCancelReason) bool {
259259 fa := DragSource{}
260260 fa.Ptr = clsPtr
@@ -262,7 +262,7 @@ func (x *DragSource) ConnectDragCancel(cb func(DragSource, uintptr, gdk.DragCanc
262262 return cb(fa, DragVarp, ReasonVarp)
263263
264264 }
265- gobject.ObjectConnect(x.GoPointer(), "signal::drag-cancel", purego.NewCallback(fcb))
265+ return gobject.SignalConnect(x.GoPointer(), "drag-cancel", purego.NewCallback(fcb))
266266 }
267267
268268 // Emitted on the drag source when a drag is finished.
@@ -270,7 +270,7 @@ func (x *DragSource) ConnectDragCancel(cb func(DragSource, uintptr, gdk.DragCanc
270270 // A typical reason to connect to this signal is to undo
271271 // things done in [signal@Gtk.DragSource::prepare] or
272272 // [signal@Gtk.DragSource::drag-begin] handlers.
273-func (x *DragSource) ConnectDragEnd(cb func(DragSource, uintptr, bool)) {
273+func (x *DragSource) ConnectDragEnd(cb func(DragSource, uintptr, bool)) uint32 {
274274 fcb := func(clsPtr uintptr, DragVarp uintptr, DeleteDataVarp bool) {
275275 fa := DragSource{}
276276 fa.Ptr = clsPtr
@@ -278,7 +278,7 @@ func (x *DragSource) ConnectDragEnd(cb func(DragSource, uintptr, bool)) {
278278 cb(fa, DragVarp, DeleteDataVarp)
279279
280280 }
281- gobject.ObjectConnect(x.GoPointer(), "signal::drag-end", purego.NewCallback(fcb))
281+ return gobject.SignalConnect(x.GoPointer(), "drag-end", purego.NewCallback(fcb))
282282 }
283283
284284 // Emitted when a drag is about to be initiated.
@@ -287,7 +287,7 @@ func (x *DragSource) ConnectDragEnd(cb func(DragSource, uintptr, bool)) {
287287 // to start. The default handler for this signal returns the value of
288288 // the [property@Gtk.DragSource:content] property, so if you set up that
289289 // property ahead of time, you don't need to connect to this signal.
290-func (x *DragSource) ConnectPrepare(cb func(DragSource, float64, float64) gdk.ContentProvider) {
290+func (x *DragSource) ConnectPrepare(cb func(DragSource, float64, float64) gdk.ContentProvider) uint32 {
291291 fcb := func(clsPtr uintptr, XVarp float64, YVarp float64) uintptr {
292292 fa := DragSource{}
293293 fa.Ptr = clsPtr
@@ -296,7 +296,7 @@ func (x *DragSource) ConnectPrepare(cb func(DragSource, float64, float64) gdk.Co
296296 return PrepareCls.Ptr
297297
298298 }
299- gobject.ObjectConnect(x.GoPointer(), "signal::prepare", purego.NewCallback(fcb))
299+ return gobject.SignalConnect(x.GoPointer(), "prepare", purego.NewCallback(fcb))
300300 }
301301
302302 func init() {
M v4/gtk/gtkdrawingarea.go +2 -2
@@ -218,7 +218,7 @@ func (c *DrawingArea) SetGoPointer(ptr uintptr) {
218218 //
219219 // This is useful in order to keep state up to date with the widget size,
220220 // like for instance a backing surface.
221-func (x *DrawingArea) ConnectResize(cb func(DrawingArea, int, int)) {
221+func (x *DrawingArea) ConnectResize(cb func(DrawingArea, int, int)) uint32 {
222222 fcb := func(clsPtr uintptr, WidthVarp int, HeightVarp int) {
223223 fa := DrawingArea{}
224224 fa.Ptr = clsPtr
@@ -226,7 +226,7 @@ func (x *DrawingArea) ConnectResize(cb func(DrawingArea, int, int)) {
226226 cb(fa, WidthVarp, HeightVarp)
227227
228228 }
229- gobject.ObjectConnect(x.GoPointer(), "signal::resize", purego.NewCallback(fcb))
229+ return gobject.SignalConnect(x.GoPointer(), "resize", purego.NewCallback(fcb))
230230 }
231231
232232 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkdropcontrollermotion.go +6 -6
@@ -93,7 +93,7 @@ func (c *DropControllerMotion) SetGoPointer(ptr uintptr) {
9393 }
9494
9595 // Signals that the pointer has entered the widget.
96-func (x *DropControllerMotion) ConnectEnter(cb func(DropControllerMotion, float64, float64)) {
96+func (x *DropControllerMotion) ConnectEnter(cb func(DropControllerMotion, float64, float64)) uint32 {
9797 fcb := func(clsPtr uintptr, XVarp float64, YVarp float64) {
9898 fa := DropControllerMotion{}
9999 fa.Ptr = clsPtr
@@ -101,11 +101,11 @@ func (x *DropControllerMotion) ConnectEnter(cb func(DropControllerMotion, float6
101101 cb(fa, XVarp, YVarp)
102102
103103 }
104- gobject.ObjectConnect(x.GoPointer(), "signal::enter", purego.NewCallback(fcb))
104+ return gobject.SignalConnect(x.GoPointer(), "enter", purego.NewCallback(fcb))
105105 }
106106
107107 // Signals that the pointer has left the widget.
108-func (x *DropControllerMotion) ConnectLeave(cb func(DropControllerMotion)) {
108+func (x *DropControllerMotion) ConnectLeave(cb func(DropControllerMotion)) uint32 {
109109 fcb := func(clsPtr uintptr) {
110110 fa := DropControllerMotion{}
111111 fa.Ptr = clsPtr
@@ -113,11 +113,11 @@ func (x *DropControllerMotion) ConnectLeave(cb func(DropControllerMotion)) {
113113 cb(fa)
114114
115115 }
116- gobject.ObjectConnect(x.GoPointer(), "signal::leave", purego.NewCallback(fcb))
116+ return gobject.SignalConnect(x.GoPointer(), "leave", purego.NewCallback(fcb))
117117 }
118118
119119 // Emitted when the pointer moves inside the widget.
120-func (x *DropControllerMotion) ConnectMotion(cb func(DropControllerMotion, float64, float64)) {
120+func (x *DropControllerMotion) ConnectMotion(cb func(DropControllerMotion, float64, float64)) uint32 {
121121 fcb := func(clsPtr uintptr, XVarp float64, YVarp float64) {
122122 fa := DropControllerMotion{}
123123 fa.Ptr = clsPtr
@@ -125,7 +125,7 @@ func (x *DropControllerMotion) ConnectMotion(cb func(DropControllerMotion, float
125125 cb(fa, XVarp, YVarp)
126126
127127 }
128- gobject.ObjectConnect(x.GoPointer(), "signal::motion", purego.NewCallback(fcb))
128+ return gobject.SignalConnect(x.GoPointer(), "motion", purego.NewCallback(fcb))
129129 }
130130
131131 func init() {
M v4/gtk/gtkdropdown.go +2 -2
@@ -304,7 +304,7 @@ func (c *DropDown) SetGoPointer(ptr uintptr) {
304304 //
305305 // The `::activate` signal on `GtkDropDown` is an action signal and
306306 // emitting it causes the drop down to pop up its dropdown.
307-func (x *DropDown) ConnectActivate(cb func(DropDown)) {
307+func (x *DropDown) ConnectActivate(cb func(DropDown)) uint32 {
308308 fcb := func(clsPtr uintptr) {
309309 fa := DropDown{}
310310 fa.Ptr = clsPtr
@@ -312,7 +312,7 @@ func (x *DropDown) ConnectActivate(cb func(DropDown)) {
312312 cb(fa)
313313
314314 }
315- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
315+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
316316 }
317317
318318 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkdroptarget.go +10 -10
@@ -270,7 +270,7 @@ func (c *DropTarget) SetGoPointer(ptr uintptr) {
270270 // [property@Gtk.DropTarget:preload] property should be set and the value
271271 // should be inspected via the ::notify:value signal, calling
272272 // [method@Gtk.DropTarget.reject] if required.
273-func (x *DropTarget) ConnectAccept(cb func(DropTarget, uintptr) bool) {
273+func (x *DropTarget) ConnectAccept(cb func(DropTarget, uintptr) bool) uint32 {
274274 fcb := func(clsPtr uintptr, DropVarp uintptr) bool {
275275 fa := DropTarget{}
276276 fa.Ptr = clsPtr
@@ -278,7 +278,7 @@ func (x *DropTarget) ConnectAccept(cb func(DropTarget, uintptr) bool) {
278278 return cb(fa, DropVarp)
279279
280280 }
281- gobject.ObjectConnect(x.GoPointer(), "signal::accept", purego.NewCallback(fcb))
281+ return gobject.SignalConnect(x.GoPointer(), "accept", purego.NewCallback(fcb))
282282 }
283283
284284 // Emitted on the drop site when the user drops the data onto the widget.
@@ -290,7 +290,7 @@ func (x *DropTarget) ConnectAccept(cb func(DropTarget, uintptr) bool) {
290290 // Otherwise, the handler returns %TRUE. In this case, this handler will
291291 // accept the drop. The handler is responsible for using the given @value
292292 // and performing the drop operation.
293-func (x *DropTarget) ConnectDrop(cb func(DropTarget, uintptr, float64, float64) bool) {
293+func (x *DropTarget) ConnectDrop(cb func(DropTarget, uintptr, float64, float64) bool) uint32 {
294294 fcb := func(clsPtr uintptr, ValueVarp uintptr, XVarp float64, YVarp float64) bool {
295295 fa := DropTarget{}
296296 fa.Ptr = clsPtr
@@ -298,13 +298,13 @@ func (x *DropTarget) ConnectDrop(cb func(DropTarget, uintptr, float64, float64)
298298 return cb(fa, ValueVarp, XVarp, YVarp)
299299
300300 }
301- gobject.ObjectConnect(x.GoPointer(), "signal::drop", purego.NewCallback(fcb))
301+ return gobject.SignalConnect(x.GoPointer(), "drop", purego.NewCallback(fcb))
302302 }
303303
304304 // Emitted on the drop site when the pointer enters the widget.
305305 //
306306 // It can be used to set up custom highlighting.
307-func (x *DropTarget) ConnectEnter(cb func(DropTarget, float64, float64) gdk.DragAction) {
307+func (x *DropTarget) ConnectEnter(cb func(DropTarget, float64, float64) gdk.DragAction) uint32 {
308308 fcb := func(clsPtr uintptr, XVarp float64, YVarp float64) gdk.DragAction {
309309 fa := DropTarget{}
310310 fa.Ptr = clsPtr
@@ -312,14 +312,14 @@ func (x *DropTarget) ConnectEnter(cb func(DropTarget, float64, float64) gdk.Drag
312312 return cb(fa, XVarp, YVarp)
313313
314314 }
315- gobject.ObjectConnect(x.GoPointer(), "signal::enter", purego.NewCallback(fcb))
315+ return gobject.SignalConnect(x.GoPointer(), "enter", purego.NewCallback(fcb))
316316 }
317317
318318 // Emitted on the drop site when the pointer leaves the widget.
319319 //
320320 // Its main purpose it to undo things done in
321321 // [signal@Gtk.DropTarget::enter].
322-func (x *DropTarget) ConnectLeave(cb func(DropTarget)) {
322+func (x *DropTarget) ConnectLeave(cb func(DropTarget)) uint32 {
323323 fcb := func(clsPtr uintptr) {
324324 fa := DropTarget{}
325325 fa.Ptr = clsPtr
@@ -327,11 +327,11 @@ func (x *DropTarget) ConnectLeave(cb func(DropTarget)) {
327327 cb(fa)
328328
329329 }
330- gobject.ObjectConnect(x.GoPointer(), "signal::leave", purego.NewCallback(fcb))
330+ return gobject.SignalConnect(x.GoPointer(), "leave", purego.NewCallback(fcb))
331331 }
332332
333333 // Emitted while the pointer is moving over the drop target.
334-func (x *DropTarget) ConnectMotion(cb func(DropTarget, float64, float64) gdk.DragAction) {
334+func (x *DropTarget) ConnectMotion(cb func(DropTarget, float64, float64) gdk.DragAction) uint32 {
335335 fcb := func(clsPtr uintptr, XVarp float64, YVarp float64) gdk.DragAction {
336336 fa := DropTarget{}
337337 fa.Ptr = clsPtr
@@ -339,7 +339,7 @@ func (x *DropTarget) ConnectMotion(cb func(DropTarget, float64, float64) gdk.Dra
339339 return cb(fa, XVarp, YVarp)
340340
341341 }
342- gobject.ObjectConnect(x.GoPointer(), "signal::motion", purego.NewCallback(fcb))
342+ return gobject.SignalConnect(x.GoPointer(), "motion", purego.NewCallback(fcb))
343343 }
344344
345345 func init() {
M v4/gtk/gtkdroptargetasync.go +10 -10
@@ -145,7 +145,7 @@ func (c *DropTargetAsync) SetGoPointer(ptr uintptr) {
145145 // further processing, such as inspecting the data, this function should
146146 // return %TRUE and proceed as is @drop was accepted and if it decides to
147147 // reject the drop later, it should call [method@Gtk.DropTargetAsync.reject_drop].
148-func (x *DropTargetAsync) ConnectAccept(cb func(DropTargetAsync, uintptr) bool) {
148+func (x *DropTargetAsync) ConnectAccept(cb func(DropTargetAsync, uintptr) bool) uint32 {
149149 fcb := func(clsPtr uintptr, DropVarp uintptr) bool {
150150 fa := DropTargetAsync{}
151151 fa.Ptr = clsPtr
@@ -153,13 +153,13 @@ func (x *DropTargetAsync) ConnectAccept(cb func(DropTargetAsync, uintptr) bool)
153153 return cb(fa, DropVarp)
154154
155155 }
156- gobject.ObjectConnect(x.GoPointer(), "signal::accept", purego.NewCallback(fcb))
156+ return gobject.SignalConnect(x.GoPointer(), "accept", purego.NewCallback(fcb))
157157 }
158158
159159 // Emitted on the drop site when the pointer enters the widget.
160160 //
161161 // It can be used to set up custom highlighting.
162-func (x *DropTargetAsync) ConnectDragEnter(cb func(DropTargetAsync, uintptr, float64, float64) gdk.DragAction) {
162+func (x *DropTargetAsync) ConnectDragEnter(cb func(DropTargetAsync, uintptr, float64, float64) gdk.DragAction) uint32 {
163163 fcb := func(clsPtr uintptr, DropVarp uintptr, XVarp float64, YVarp float64) gdk.DragAction {
164164 fa := DropTargetAsync{}
165165 fa.Ptr = clsPtr
@@ -167,14 +167,14 @@ func (x *DropTargetAsync) ConnectDragEnter(cb func(DropTargetAsync, uintptr, flo
167167 return cb(fa, DropVarp, XVarp, YVarp)
168168
169169 }
170- gobject.ObjectConnect(x.GoPointer(), "signal::drag-enter", purego.NewCallback(fcb))
170+ return gobject.SignalConnect(x.GoPointer(), "drag-enter", purego.NewCallback(fcb))
171171 }
172172
173173 // Emitted on the drop site when the pointer leaves the widget.
174174 //
175175 // Its main purpose it to undo things done in
176176 // `GtkDropTargetAsync`::drag-enter.
177-func (x *DropTargetAsync) ConnectDragLeave(cb func(DropTargetAsync, uintptr)) {
177+func (x *DropTargetAsync) ConnectDragLeave(cb func(DropTargetAsync, uintptr)) uint32 {
178178 fcb := func(clsPtr uintptr, DropVarp uintptr) {
179179 fa := DropTargetAsync{}
180180 fa.Ptr = clsPtr
@@ -182,11 +182,11 @@ func (x *DropTargetAsync) ConnectDragLeave(cb func(DropTargetAsync, uintptr)) {
182182 cb(fa, DropVarp)
183183
184184 }
185- gobject.ObjectConnect(x.GoPointer(), "signal::drag-leave", purego.NewCallback(fcb))
185+ return gobject.SignalConnect(x.GoPointer(), "drag-leave", purego.NewCallback(fcb))
186186 }
187187
188188 // Emitted while the pointer is moving over the drop target.
189-func (x *DropTargetAsync) ConnectDragMotion(cb func(DropTargetAsync, uintptr, float64, float64) gdk.DragAction) {
189+func (x *DropTargetAsync) ConnectDragMotion(cb func(DropTargetAsync, uintptr, float64, float64) gdk.DragAction) uint32 {
190190 fcb := func(clsPtr uintptr, DropVarp uintptr, XVarp float64, YVarp float64) gdk.DragAction {
191191 fa := DropTargetAsync{}
192192 fa.Ptr = clsPtr
@@ -194,7 +194,7 @@ func (x *DropTargetAsync) ConnectDragMotion(cb func(DropTargetAsync, uintptr, fl
194194 return cb(fa, DropVarp, XVarp, YVarp)
195195
196196 }
197- gobject.ObjectConnect(x.GoPointer(), "signal::drag-motion", purego.NewCallback(fcb))
197+ return gobject.SignalConnect(x.GoPointer(), "drag-motion", purego.NewCallback(fcb))
198198 }
199199
200200 // Emitted on the drop site when the user drops the data onto the widget.
@@ -211,7 +211,7 @@ func (x *DropTargetAsync) ConnectDragMotion(cb func(DropTargetAsync, uintptr, fl
211211 // To receive the data, use one of the read functions provided by
212212 // [class@Gdk.Drop] such as [method@Gdk.Drop.read_async] or
213213 // [method@Gdk.Drop.read_value_async].
214-func (x *DropTargetAsync) ConnectDrop(cb func(DropTargetAsync, uintptr, float64, float64) bool) {
214+func (x *DropTargetAsync) ConnectDrop(cb func(DropTargetAsync, uintptr, float64, float64) bool) uint32 {
215215 fcb := func(clsPtr uintptr, DropVarp uintptr, XVarp float64, YVarp float64) bool {
216216 fa := DropTargetAsync{}
217217 fa.Ptr = clsPtr
@@ -219,7 +219,7 @@ func (x *DropTargetAsync) ConnectDrop(cb func(DropTargetAsync, uintptr, float64,
219219 return cb(fa, DropVarp, XVarp, YVarp)
220220
221221 }
222- gobject.ObjectConnect(x.GoPointer(), "signal::drop", purego.NewCallback(fcb))
222+ return gobject.SignalConnect(x.GoPointer(), "drop", purego.NewCallback(fcb))
223223 }
224224
225225 func init() {
M v4/gtk/gtkemojichooser.go +2 -2
@@ -78,7 +78,7 @@ func (c *EmojiChooser) SetGoPointer(ptr uintptr) {
7878 }
7979
8080 // Emitted when the user selects an Emoji.
81-func (x *EmojiChooser) ConnectEmojiPicked(cb func(EmojiChooser, string)) {
81+func (x *EmojiChooser) ConnectEmojiPicked(cb func(EmojiChooser, string)) uint32 {
8282 fcb := func(clsPtr uintptr, TextVarp string) {
8383 fa := EmojiChooser{}
8484 fa.Ptr = clsPtr
@@ -86,7 +86,7 @@ func (x *EmojiChooser) ConnectEmojiPicked(cb func(EmojiChooser, string)) {
8686 cb(fa, TextVarp)
8787
8888 }
89- gobject.ObjectConnect(x.GoPointer(), "signal::emoji-picked", purego.NewCallback(fcb))
89+ return gobject.SignalConnect(x.GoPointer(), "emoji-picked", purego.NewCallback(fcb))
9090 }
9191
9292 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkentry.go +6 -6
@@ -910,7 +910,7 @@ func (c *Entry) SetGoPointer(ptr uintptr) {
910910 // Emitted when the entry is activated.
911911 //
912912 // The keybindings for this signal are all forms of the Enter key.
913-func (x *Entry) ConnectActivate(cb func(Entry)) {
913+func (x *Entry) ConnectActivate(cb func(Entry)) uint32 {
914914 fcb := func(clsPtr uintptr) {
915915 fa := Entry{}
916916 fa.Ptr = clsPtr
@@ -918,11 +918,11 @@ func (x *Entry) ConnectActivate(cb func(Entry)) {
918918 cb(fa)
919919
920920 }
921- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
921+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
922922 }
923923
924924 // Emitted when an activatable icon is clicked.
925-func (x *Entry) ConnectIconPress(cb func(Entry, EntryIconPosition)) {
925+func (x *Entry) ConnectIconPress(cb func(Entry, EntryIconPosition)) uint32 {
926926 fcb := func(clsPtr uintptr, IconPosVarp EntryIconPosition) {
927927 fa := Entry{}
928928 fa.Ptr = clsPtr
@@ -930,12 +930,12 @@ func (x *Entry) ConnectIconPress(cb func(Entry, EntryIconPosition)) {
930930 cb(fa, IconPosVarp)
931931
932932 }
933- gobject.ObjectConnect(x.GoPointer(), "signal::icon-press", purego.NewCallback(fcb))
933+ return gobject.SignalConnect(x.GoPointer(), "icon-press", purego.NewCallback(fcb))
934934 }
935935
936936 // Emitted on the button release from a mouse click
937937 // over an activatable icon.
938-func (x *Entry) ConnectIconRelease(cb func(Entry, EntryIconPosition)) {
938+func (x *Entry) ConnectIconRelease(cb func(Entry, EntryIconPosition)) uint32 {
939939 fcb := func(clsPtr uintptr, IconPosVarp EntryIconPosition) {
940940 fa := Entry{}
941941 fa.Ptr = clsPtr
@@ -943,7 +943,7 @@ func (x *Entry) ConnectIconRelease(cb func(Entry, EntryIconPosition)) {
943943 cb(fa, IconPosVarp)
944944
945945 }
946- gobject.ObjectConnect(x.GoPointer(), "signal::icon-release", purego.NewCallback(fcb))
946+ return gobject.SignalConnect(x.GoPointer(), "icon-release", purego.NewCallback(fcb))
947947 }
948948
949949 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkentrybuffer.go +4 -4
@@ -183,7 +183,7 @@ func (c *EntryBuffer) SetGoPointer(ptr uintptr) {
183183 //
184184 // If you want access to the text after the text has been modified,
185185 // use %G_CONNECT_AFTER.
186-func (x *EntryBuffer) ConnectDeletedText(cb func(EntryBuffer, uint, uint)) {
186+func (x *EntryBuffer) ConnectDeletedText(cb func(EntryBuffer, uint, uint)) uint32 {
187187 fcb := func(clsPtr uintptr, PositionVarp uint, NCharsVarp uint) {
188188 fa := EntryBuffer{}
189189 fa.Ptr = clsPtr
@@ -191,11 +191,11 @@ func (x *EntryBuffer) ConnectDeletedText(cb func(EntryBuffer, uint, uint)) {
191191 cb(fa, PositionVarp, NCharsVarp)
192192
193193 }
194- gobject.ObjectConnect(x.GoPointer(), "signal::deleted-text", purego.NewCallback(fcb))
194+ return gobject.SignalConnect(x.GoPointer(), "deleted-text", purego.NewCallback(fcb))
195195 }
196196
197197 // This signal is emitted after text is inserted into the buffer.
198-func (x *EntryBuffer) ConnectInsertedText(cb func(EntryBuffer, uint, string, uint)) {
198+func (x *EntryBuffer) ConnectInsertedText(cb func(EntryBuffer, uint, string, uint)) uint32 {
199199 fcb := func(clsPtr uintptr, PositionVarp uint, CharsVarp string, NCharsVarp uint) {
200200 fa := EntryBuffer{}
201201 fa.Ptr = clsPtr
@@ -203,7 +203,7 @@ func (x *EntryBuffer) ConnectInsertedText(cb func(EntryBuffer, uint, string, uin
203203 cb(fa, PositionVarp, CharsVarp, NCharsVarp)
204204
205205 }
206- gobject.ObjectConnect(x.GoPointer(), "signal::inserted-text", purego.NewCallback(fcb))
206+ return gobject.SignalConnect(x.GoPointer(), "inserted-text", purego.NewCallback(fcb))
207207 }
208208
209209 func init() {
M v4/gtk/gtkentrycompletion.go +8 -8
@@ -374,7 +374,7 @@ func (c *EntryCompletion) SetGoPointer(ptr uintptr) {
374374 //
375375 // Note that @model is the model that was passed to
376376 // [method@Gtk.EntryCompletion.set_model].
377-func (x *EntryCompletion) ConnectCursorOnMatch(cb func(EntryCompletion, uintptr, uintptr) bool) {
377+func (x *EntryCompletion) ConnectCursorOnMatch(cb func(EntryCompletion, uintptr, uintptr) bool) uint32 {
378378 fcb := func(clsPtr uintptr, ModelVarp uintptr, IterVarp uintptr) bool {
379379 fa := EntryCompletion{}
380380 fa.Ptr = clsPtr
@@ -382,7 +382,7 @@ func (x *EntryCompletion) ConnectCursorOnMatch(cb func(EntryCompletion, uintptr,
382382 return cb(fa, ModelVarp, IterVarp)
383383
384384 }
385- gobject.ObjectConnect(x.GoPointer(), "signal::cursor-on-match", purego.NewCallback(fcb))
385+ return gobject.SignalConnect(x.GoPointer(), "cursor-on-match", purego.NewCallback(fcb))
386386 }
387387
388388 // Emitted when the inline autocompletion is triggered.
@@ -394,7 +394,7 @@ func (x *EntryCompletion) ConnectCursorOnMatch(cb func(EntryCompletion, uintptr,
394394 // smaller part of the @prefix into the entry - e.g. the entry used in
395395 // the `GtkFileChooser` inserts only the part of the prefix up to the
396396 // next '/'.
397-func (x *EntryCompletion) ConnectInsertPrefix(cb func(EntryCompletion, string) bool) {
397+func (x *EntryCompletion) ConnectInsertPrefix(cb func(EntryCompletion, string) bool) uint32 {
398398 fcb := func(clsPtr uintptr, PrefixVarp string) bool {
399399 fa := EntryCompletion{}
400400 fa.Ptr = clsPtr
@@ -402,7 +402,7 @@ func (x *EntryCompletion) ConnectInsertPrefix(cb func(EntryCompletion, string) b
402402 return cb(fa, PrefixVarp)
403403
404404 }
405- gobject.ObjectConnect(x.GoPointer(), "signal::insert-prefix", purego.NewCallback(fcb))
405+ return gobject.SignalConnect(x.GoPointer(), "insert-prefix", purego.NewCallback(fcb))
406406 }
407407
408408 // Emitted when a match from the list is selected.
@@ -413,7 +413,7 @@ func (x *EntryCompletion) ConnectInsertPrefix(cb func(EntryCompletion, string) b
413413 //
414414 // Note that @model is the model that was passed to
415415 // [method@Gtk.EntryCompletion.set_model].
416-func (x *EntryCompletion) ConnectMatchSelected(cb func(EntryCompletion, uintptr, uintptr) bool) {
416+func (x *EntryCompletion) ConnectMatchSelected(cb func(EntryCompletion, uintptr, uintptr) bool) uint32 {
417417 fcb := func(clsPtr uintptr, ModelVarp uintptr, IterVarp uintptr) bool {
418418 fa := EntryCompletion{}
419419 fa.Ptr = clsPtr
@@ -421,14 +421,14 @@ func (x *EntryCompletion) ConnectMatchSelected(cb func(EntryCompletion, uintptr,
421421 return cb(fa, ModelVarp, IterVarp)
422422
423423 }
424- gobject.ObjectConnect(x.GoPointer(), "signal::match-selected", purego.NewCallback(fcb))
424+ return gobject.SignalConnect(x.GoPointer(), "match-selected", purego.NewCallback(fcb))
425425 }
426426
427427 // Emitted when the filter model has zero
428428 // number of rows in completion_complete method.
429429 //
430430 // In other words when `GtkEntryCompletion` is out of suggestions.
431-func (x *EntryCompletion) ConnectNoMatches(cb func(EntryCompletion)) {
431+func (x *EntryCompletion) ConnectNoMatches(cb func(EntryCompletion)) uint32 {
432432 fcb := func(clsPtr uintptr) {
433433 fa := EntryCompletion{}
434434 fa.Ptr = clsPtr
@@ -436,7 +436,7 @@ func (x *EntryCompletion) ConnectNoMatches(cb func(EntryCompletion)) {
436436 cb(fa)
437437
438438 }
439- gobject.ObjectConnect(x.GoPointer(), "signal::no-matches", purego.NewCallback(fcb))
439+ return gobject.SignalConnect(x.GoPointer(), "no-matches", purego.NewCallback(fcb))
440440 }
441441
442442 // Gets the ID of the @buildable object.
M v4/gtk/gtkeventcontrollerfocus.go +4 -4
@@ -81,7 +81,7 @@ func (c *EventControllerFocus) SetGoPointer(ptr uintptr) {
8181 // in these cases, you can monitor the
8282 // [property@Gtk.EventControllerFocus:is-focus]
8383 // property for changes.
84-func (x *EventControllerFocus) ConnectEnter(cb func(EventControllerFocus)) {
84+func (x *EventControllerFocus) ConnectEnter(cb func(EventControllerFocus)) uint32 {
8585 fcb := func(clsPtr uintptr) {
8686 fa := EventControllerFocus{}
8787 fa.Ptr = clsPtr
@@ -89,7 +89,7 @@ func (x *EventControllerFocus) ConnectEnter(cb func(EventControllerFocus)) {
8989 cb(fa)
9090
9191 }
92- gobject.ObjectConnect(x.GoPointer(), "signal::enter", purego.NewCallback(fcb))
92+ return gobject.SignalConnect(x.GoPointer(), "enter", purego.NewCallback(fcb))
9393 }
9494
9595 // Emitted whenever the focus leaves the widget hierarchy
@@ -101,7 +101,7 @@ func (x *EventControllerFocus) ConnectEnter(cb func(EventControllerFocus)) {
101101 // to a descendent). If you are interested in these cases, you
102102 // can monitor the [property@Gtk.EventControllerFocus:is-focus]
103103 // property for changes.
104-func (x *EventControllerFocus) ConnectLeave(cb func(EventControllerFocus)) {
104+func (x *EventControllerFocus) ConnectLeave(cb func(EventControllerFocus)) uint32 {
105105 fcb := func(clsPtr uintptr) {
106106 fa := EventControllerFocus{}
107107 fa.Ptr = clsPtr
@@ -109,7 +109,7 @@ func (x *EventControllerFocus) ConnectLeave(cb func(EventControllerFocus)) {
109109 cb(fa)
110110
111111 }
112- gobject.ObjectConnect(x.GoPointer(), "signal::leave", purego.NewCallback(fcb))
112+ return gobject.SignalConnect(x.GoPointer(), "leave", purego.NewCallback(fcb))
113113 }
114114
115115 func init() {
M v4/gtk/gtkeventcontrollerkey.go +8 -8
@@ -103,7 +103,7 @@ func (c *EventControllerKey) SetGoPointer(ptr uintptr) {
103103 //
104104 // See [method@Gtk.EventControllerKey.set_im_context] and
105105 // [method@Gtk.IMContext.filter_keypress].
106-func (x *EventControllerKey) ConnectImUpdate(cb func(EventControllerKey)) {
106+func (x *EventControllerKey) ConnectImUpdate(cb func(EventControllerKey)) uint32 {
107107 fcb := func(clsPtr uintptr) {
108108 fa := EventControllerKey{}
109109 fa.Ptr = clsPtr
@@ -111,11 +111,11 @@ func (x *EventControllerKey) ConnectImUpdate(cb func(EventControllerKey)) {
111111 cb(fa)
112112
113113 }
114- gobject.ObjectConnect(x.GoPointer(), "signal::im-update", purego.NewCallback(fcb))
114+ return gobject.SignalConnect(x.GoPointer(), "im-update", purego.NewCallback(fcb))
115115 }
116116
117117 // Emitted whenever a key is pressed.
118-func (x *EventControllerKey) ConnectKeyPressed(cb func(EventControllerKey, uint, uint, gdk.ModifierType) bool) {
118+func (x *EventControllerKey) ConnectKeyPressed(cb func(EventControllerKey, uint, uint, gdk.ModifierType) bool) uint32 {
119119 fcb := func(clsPtr uintptr, KeyvalVarp uint, KeycodeVarp uint, StateVarp gdk.ModifierType) bool {
120120 fa := EventControllerKey{}
121121 fa.Ptr = clsPtr
@@ -123,11 +123,11 @@ func (x *EventControllerKey) ConnectKeyPressed(cb func(EventControllerKey, uint,
123123 return cb(fa, KeyvalVarp, KeycodeVarp, StateVarp)
124124
125125 }
126- gobject.ObjectConnect(x.GoPointer(), "signal::key-pressed", purego.NewCallback(fcb))
126+ return gobject.SignalConnect(x.GoPointer(), "key-pressed", purego.NewCallback(fcb))
127127 }
128128
129129 // Emitted whenever a key is released.
130-func (x *EventControllerKey) ConnectKeyReleased(cb func(EventControllerKey, uint, uint, gdk.ModifierType)) {
130+func (x *EventControllerKey) ConnectKeyReleased(cb func(EventControllerKey, uint, uint, gdk.ModifierType)) uint32 {
131131 fcb := func(clsPtr uintptr, KeyvalVarp uint, KeycodeVarp uint, StateVarp gdk.ModifierType) {
132132 fa := EventControllerKey{}
133133 fa.Ptr = clsPtr
@@ -135,11 +135,11 @@ func (x *EventControllerKey) ConnectKeyReleased(cb func(EventControllerKey, uint
135135 cb(fa, KeyvalVarp, KeycodeVarp, StateVarp)
136136
137137 }
138- gobject.ObjectConnect(x.GoPointer(), "signal::key-released", purego.NewCallback(fcb))
138+ return gobject.SignalConnect(x.GoPointer(), "key-released", purego.NewCallback(fcb))
139139 }
140140
141141 // Emitted whenever the state of modifier keys and pointer buttons change.
142-func (x *EventControllerKey) ConnectModifiers(cb func(EventControllerKey, gdk.ModifierType) bool) {
142+func (x *EventControllerKey) ConnectModifiers(cb func(EventControllerKey, gdk.ModifierType) bool) uint32 {
143143 fcb := func(clsPtr uintptr, KeyvalVarp gdk.ModifierType) bool {
144144 fa := EventControllerKey{}
145145 fa.Ptr = clsPtr
@@ -147,7 +147,7 @@ func (x *EventControllerKey) ConnectModifiers(cb func(EventControllerKey, gdk.Mo
147147 return cb(fa, KeyvalVarp)
148148
149149 }
150- gobject.ObjectConnect(x.GoPointer(), "signal::modifiers", purego.NewCallback(fcb))
150+ return gobject.SignalConnect(x.GoPointer(), "modifiers", purego.NewCallback(fcb))
151151 }
152152
153153 func init() {
M v4/gtk/gtkeventcontrollerlegacy.go +2 -2
@@ -50,7 +50,7 @@ func (c *EventControllerLegacy) SetGoPointer(ptr uintptr) {
5050 }
5151
5252 // Emitted for each GDK event delivered to @controller.
53-func (x *EventControllerLegacy) ConnectEvent(cb func(EventControllerLegacy, uintptr) bool) {
53+func (x *EventControllerLegacy) ConnectEvent(cb func(EventControllerLegacy, uintptr) bool) uint32 {
5454 fcb := func(clsPtr uintptr, EventVarp uintptr) bool {
5555 fa := EventControllerLegacy{}
5656 fa.Ptr = clsPtr
@@ -58,7 +58,7 @@ func (x *EventControllerLegacy) ConnectEvent(cb func(EventControllerLegacy, uint
5858 return cb(fa, EventVarp)
5959
6060 }
61- gobject.ObjectConnect(x.GoPointer(), "signal::event", purego.NewCallback(fcb))
61+ return gobject.SignalConnect(x.GoPointer(), "event", purego.NewCallback(fcb))
6262 }
6363
6464 func init() {
M v4/gtk/gtkeventcontrollermotion.go +6 -6
@@ -72,7 +72,7 @@ func (c *EventControllerMotion) SetGoPointer(ptr uintptr) {
7272 }
7373
7474 // Signals that the pointer has entered the widget.
75-func (x *EventControllerMotion) ConnectEnter(cb func(EventControllerMotion, float64, float64)) {
75+func (x *EventControllerMotion) ConnectEnter(cb func(EventControllerMotion, float64, float64)) uint32 {
7676 fcb := func(clsPtr uintptr, XVarp float64, YVarp float64) {
7777 fa := EventControllerMotion{}
7878 fa.Ptr = clsPtr
@@ -80,11 +80,11 @@ func (x *EventControllerMotion) ConnectEnter(cb func(EventControllerMotion, floa
8080 cb(fa, XVarp, YVarp)
8181
8282 }
83- gobject.ObjectConnect(x.GoPointer(), "signal::enter", purego.NewCallback(fcb))
83+ return gobject.SignalConnect(x.GoPointer(), "enter", purego.NewCallback(fcb))
8484 }
8585
8686 // Signals that the pointer has left the widget.
87-func (x *EventControllerMotion) ConnectLeave(cb func(EventControllerMotion)) {
87+func (x *EventControllerMotion) ConnectLeave(cb func(EventControllerMotion)) uint32 {
8888 fcb := func(clsPtr uintptr) {
8989 fa := EventControllerMotion{}
9090 fa.Ptr = clsPtr
@@ -92,11 +92,11 @@ func (x *EventControllerMotion) ConnectLeave(cb func(EventControllerMotion)) {
9292 cb(fa)
9393
9494 }
95- gobject.ObjectConnect(x.GoPointer(), "signal::leave", purego.NewCallback(fcb))
95+ return gobject.SignalConnect(x.GoPointer(), "leave", purego.NewCallback(fcb))
9696 }
9797
9898 // Emitted when the pointer moves inside the widget.
99-func (x *EventControllerMotion) ConnectMotion(cb func(EventControllerMotion, float64, float64)) {
99+func (x *EventControllerMotion) ConnectMotion(cb func(EventControllerMotion, float64, float64)) uint32 {
100100 fcb := func(clsPtr uintptr, XVarp float64, YVarp float64) {
101101 fa := EventControllerMotion{}
102102 fa.Ptr = clsPtr
@@ -104,7 +104,7 @@ func (x *EventControllerMotion) ConnectMotion(cb func(EventControllerMotion, flo
104104 cb(fa, XVarp, YVarp)
105105
106106 }
107- gobject.ObjectConnect(x.GoPointer(), "signal::motion", purego.NewCallback(fcb))
107+ return gobject.SignalConnect(x.GoPointer(), "motion", purego.NewCallback(fcb))
108108 }
109109
110110 func init() {
M v4/gtk/gtkeventcontrollerscroll.go +8 -8
@@ -135,7 +135,7 @@ func (c *EventControllerScroll) SetGoPointer(ptr uintptr) {
135135 // @vel_x and @vel_y express the initial velocity that was
136136 // imprinted by the scroll events. @vel_x and @vel_y are expressed in
137137 // pixels/ms.
138-func (x *EventControllerScroll) ConnectDecelerate(cb func(EventControllerScroll, float64, float64)) {
138+func (x *EventControllerScroll) ConnectDecelerate(cb func(EventControllerScroll, float64, float64)) uint32 {
139139 fcb := func(clsPtr uintptr, VelXVarp float64, VelYVarp float64) {
140140 fa := EventControllerScroll{}
141141 fa.Ptr = clsPtr
@@ -143,7 +143,7 @@ func (x *EventControllerScroll) ConnectDecelerate(cb func(EventControllerScroll,
143143 cb(fa, VelXVarp, VelYVarp)
144144
145145 }
146- gobject.ObjectConnect(x.GoPointer(), "signal::decelerate", purego.NewCallback(fcb))
146+ return gobject.SignalConnect(x.GoPointer(), "decelerate", purego.NewCallback(fcb))
147147 }
148148
149149 // Signals that the widget should scroll by the
@@ -151,7 +151,7 @@ func (x *EventControllerScroll) ConnectDecelerate(cb func(EventControllerScroll,
151151 //
152152 // For the representation unit of the deltas, see
153153 // [method@Gtk.EventControllerScroll.get_unit].
154-func (x *EventControllerScroll) ConnectScroll(cb func(EventControllerScroll, float64, float64) bool) {
154+func (x *EventControllerScroll) ConnectScroll(cb func(EventControllerScroll, float64, float64) bool) uint32 {
155155 fcb := func(clsPtr uintptr, DxVarp float64, DyVarp float64) bool {
156156 fa := EventControllerScroll{}
157157 fa.Ptr = clsPtr
@@ -159,13 +159,13 @@ func (x *EventControllerScroll) ConnectScroll(cb func(EventControllerScroll, flo
159159 return cb(fa, DxVarp, DyVarp)
160160
161161 }
162- gobject.ObjectConnect(x.GoPointer(), "signal::scroll", purego.NewCallback(fcb))
162+ return gobject.SignalConnect(x.GoPointer(), "scroll", purego.NewCallback(fcb))
163163 }
164164
165165 // Signals that a new scrolling operation has begun.
166166 //
167167 // It will only be emitted on devices capable of it.
168-func (x *EventControllerScroll) ConnectScrollBegin(cb func(EventControllerScroll)) {
168+func (x *EventControllerScroll) ConnectScrollBegin(cb func(EventControllerScroll)) uint32 {
169169 fcb := func(clsPtr uintptr) {
170170 fa := EventControllerScroll{}
171171 fa.Ptr = clsPtr
@@ -173,13 +173,13 @@ func (x *EventControllerScroll) ConnectScrollBegin(cb func(EventControllerScroll
173173 cb(fa)
174174
175175 }
176- gobject.ObjectConnect(x.GoPointer(), "signal::scroll-begin", purego.NewCallback(fcb))
176+ return gobject.SignalConnect(x.GoPointer(), "scroll-begin", purego.NewCallback(fcb))
177177 }
178178
179179 // Signals that a scrolling operation has finished.
180180 //
181181 // It will only be emitted on devices capable of it.
182-func (x *EventControllerScroll) ConnectScrollEnd(cb func(EventControllerScroll)) {
182+func (x *EventControllerScroll) ConnectScrollEnd(cb func(EventControllerScroll)) uint32 {
183183 fcb := func(clsPtr uintptr) {
184184 fa := EventControllerScroll{}
185185 fa.Ptr = clsPtr
@@ -187,7 +187,7 @@ func (x *EventControllerScroll) ConnectScrollEnd(cb func(EventControllerScroll))
187187 cb(fa)
188188
189189 }
190- gobject.ObjectConnect(x.GoPointer(), "signal::scroll-end", purego.NewCallback(fcb))
190+ return gobject.SignalConnect(x.GoPointer(), "scroll-end", purego.NewCallback(fcb))
191191 }
192192
193193 func init() {
M v4/gtk/gtkexpander.go +2 -2
@@ -326,7 +326,7 @@ func (c *Expander) SetGoPointer(ptr uintptr) {
326326 }
327327
328328 // Activates the `GtkExpander`.
329-func (x *Expander) ConnectActivate(cb func(Expander)) {
329+func (x *Expander) ConnectActivate(cb func(Expander)) uint32 {
330330 fcb := func(clsPtr uintptr) {
331331 fa := Expander{}
332332 fa.Ptr = clsPtr
@@ -334,7 +334,7 @@ func (x *Expander) ConnectActivate(cb func(Expander)) {
334334 cb(fa)
335335
336336 }
337- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
337+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
338338 }
339339
340340 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkfilechooserwidget.go +24 -24
@@ -65,7 +65,7 @@ func (c *FileChooserWidget) SetGoPointer(ptr uintptr) {
6565 // folder in the file list.
6666 //
6767 // The default binding for this signal is <kbd>Alt</kbd>-<kbd>D</kbd>.
68-func (x *FileChooserWidget) ConnectDesktopFolder(cb func(FileChooserWidget)) {
68+func (x *FileChooserWidget) ConnectDesktopFolder(cb func(FileChooserWidget)) uint32 {
6969 fcb := func(clsPtr uintptr) {
7070 fa := FileChooserWidget{}
7171 fa.Ptr = clsPtr
@@ -73,7 +73,7 @@ func (x *FileChooserWidget) ConnectDesktopFolder(cb func(FileChooserWidget)) {
7373 cb(fa)
7474
7575 }
76- gobject.ObjectConnect(x.GoPointer(), "signal::desktop-folder", purego.NewCallback(fcb))
76+ return gobject.SignalConnect(x.GoPointer(), "desktop-folder", purego.NewCallback(fcb))
7777 }
7878
7979 // Emitted when the user asks for it.
@@ -88,7 +88,7 @@ func (x *FileChooserWidget) ConnectDesktopFolder(cb func(FileChooserWidget)) {
8888 // switch to the "baz" subfolder.
8989 //
9090 // The default binding for this signal is <kbd>Alt</kbd>-<kbd>Down</kbd>.
91-func (x *FileChooserWidget) ConnectDownFolder(cb func(FileChooserWidget)) {
91+func (x *FileChooserWidget) ConnectDownFolder(cb func(FileChooserWidget)) uint32 {
9292 fcb := func(clsPtr uintptr) {
9393 fa := FileChooserWidget{}
9494 fa.Ptr = clsPtr
@@ -96,7 +96,7 @@ func (x *FileChooserWidget) ConnectDownFolder(cb func(FileChooserWidget)) {
9696 cb(fa)
9797
9898 }
99- gobject.ObjectConnect(x.GoPointer(), "signal::down-folder", purego.NewCallback(fcb))
99+ return gobject.SignalConnect(x.GoPointer(), "down-folder", purego.NewCallback(fcb))
100100 }
101101
102102 // Emitted when the user asks for it.
@@ -107,7 +107,7 @@ func (x *FileChooserWidget) ConnectDownFolder(cb func(FileChooserWidget)) {
107107 // folder in the file list.
108108 //
109109 // The default binding for this signal is <kbd>Alt</kbd>-<kbd>Home</kbd>.
110-func (x *FileChooserWidget) ConnectHomeFolder(cb func(FileChooserWidget)) {
110+func (x *FileChooserWidget) ConnectHomeFolder(cb func(FileChooserWidget)) uint32 {
111111 fcb := func(clsPtr uintptr) {
112112 fa := FileChooserWidget{}
113113 fa.Ptr = clsPtr
@@ -115,7 +115,7 @@ func (x *FileChooserWidget) ConnectHomeFolder(cb func(FileChooserWidget)) {
115115 cb(fa)
116116
117117 }
118- gobject.ObjectConnect(x.GoPointer(), "signal::home-folder", purego.NewCallback(fcb))
118+ return gobject.SignalConnect(x.GoPointer(), "home-folder", purego.NewCallback(fcb))
119119 }
120120
121121 // Emitted when the user asks for it.
@@ -131,7 +131,7 @@ func (x *FileChooserWidget) ConnectHomeFolder(cb func(FileChooserWidget)) {
131131 // type `/` and immediately type a path name. On Unix systems, this is
132132 // bound to <kbd>~</kbd> (tilde) with a @path string of "~" itself for
133133 // access to home directories.
134-func (x *FileChooserWidget) ConnectLocationPopup(cb func(FileChooserWidget, string)) {
134+func (x *FileChooserWidget) ConnectLocationPopup(cb func(FileChooserWidget, string)) uint32 {
135135 fcb := func(clsPtr uintptr, PathVarp string) {
136136 fa := FileChooserWidget{}
137137 fa.Ptr = clsPtr
@@ -139,7 +139,7 @@ func (x *FileChooserWidget) ConnectLocationPopup(cb func(FileChooserWidget, stri
139139 cb(fa, PathVarp)
140140
141141 }
142- gobject.ObjectConnect(x.GoPointer(), "signal::location-popup", purego.NewCallback(fcb))
142+ return gobject.SignalConnect(x.GoPointer(), "location-popup", purego.NewCallback(fcb))
143143 }
144144
145145 // Emitted when the user asks for it.
@@ -150,7 +150,7 @@ func (x *FileChooserWidget) ConnectLocationPopup(cb func(FileChooserWidget, stri
150150 // when the user pastes into a `GtkFileChooserWidget`.
151151 //
152152 // The default binding for this signal is <kbd>Control</kbd>-<kbd>V</kbd>.
153-func (x *FileChooserWidget) ConnectLocationPopupOnPaste(cb func(FileChooserWidget)) {
153+func (x *FileChooserWidget) ConnectLocationPopupOnPaste(cb func(FileChooserWidget)) uint32 {
154154 fcb := func(clsPtr uintptr) {
155155 fa := FileChooserWidget{}
156156 fa.Ptr = clsPtr
@@ -158,7 +158,7 @@ func (x *FileChooserWidget) ConnectLocationPopupOnPaste(cb func(FileChooserWidge
158158 cb(fa)
159159
160160 }
161- gobject.ObjectConnect(x.GoPointer(), "signal::location-popup-on-paste", purego.NewCallback(fcb))
161+ return gobject.SignalConnect(x.GoPointer(), "location-popup-on-paste", purego.NewCallback(fcb))
162162 }
163163
164164 // Emitted when the user asks for it.
@@ -170,7 +170,7 @@ func (x *FileChooserWidget) ConnectLocationPopupOnPaste(cb func(FileChooserWidge
170170 // he wishes to select.
171171 //
172172 // The default binding for this signal is <kbd>Control</kbd>-<kbd>L</kbd>.
173-func (x *FileChooserWidget) ConnectLocationTogglePopup(cb func(FileChooserWidget)) {
173+func (x *FileChooserWidget) ConnectLocationTogglePopup(cb func(FileChooserWidget)) uint32 {
174174 fcb := func(clsPtr uintptr) {
175175 fa := FileChooserWidget{}
176176 fa.Ptr = clsPtr
@@ -178,7 +178,7 @@ func (x *FileChooserWidget) ConnectLocationTogglePopup(cb func(FileChooserWidget
178178 cb(fa)
179179
180180 }
181- gobject.ObjectConnect(x.GoPointer(), "signal::location-toggle-popup", purego.NewCallback(fcb))
181+ return gobject.SignalConnect(x.GoPointer(), "location-toggle-popup", purego.NewCallback(fcb))
182182 }
183183
184184 // Emitted when the user asks for it.
@@ -188,7 +188,7 @@ func (x *FileChooserWidget) ConnectLocationTogglePopup(cb func(FileChooserWidget
188188 // This is used to move the focus to the places sidebar.
189189 //
190190 // The default binding for this signal is <kbd>Alt</kbd>-<kbd>P</kbd>.
191-func (x *FileChooserWidget) ConnectPlacesShortcut(cb func(FileChooserWidget)) {
191+func (x *FileChooserWidget) ConnectPlacesShortcut(cb func(FileChooserWidget)) uint32 {
192192 fcb := func(clsPtr uintptr) {
193193 fa := FileChooserWidget{}
194194 fa.Ptr = clsPtr
@@ -196,7 +196,7 @@ func (x *FileChooserWidget) ConnectPlacesShortcut(cb func(FileChooserWidget)) {
196196 cb(fa)
197197
198198 }
199- gobject.ObjectConnect(x.GoPointer(), "signal::places-shortcut", purego.NewCallback(fcb))
199+ return gobject.SignalConnect(x.GoPointer(), "places-shortcut", purego.NewCallback(fcb))
200200 }
201201
202202 // Emitted when the user asks for it.
@@ -213,7 +213,7 @@ func (x *FileChooserWidget) ConnectPlacesShortcut(cb func(FileChooserWidget)) {
213213 // Note that in the default binding, that <kbd>Alt</kbd>-<kbd>1</kbd> is
214214 // actually defined to switch to the bookmark at index 0, and so on
215215 // successively.
216-func (x *FileChooserWidget) ConnectQuickBookmark(cb func(FileChooserWidget, int)) {
216+func (x *FileChooserWidget) ConnectQuickBookmark(cb func(FileChooserWidget, int)) uint32 {
217217 fcb := func(clsPtr uintptr, BookmarkIndexVarp int) {
218218 fa := FileChooserWidget{}
219219 fa.Ptr = clsPtr
@@ -221,7 +221,7 @@ func (x *FileChooserWidget) ConnectQuickBookmark(cb func(FileChooserWidget, int)
221221 cb(fa, BookmarkIndexVarp)
222222
223223 }
224- gobject.ObjectConnect(x.GoPointer(), "signal::quick-bookmark", purego.NewCallback(fcb))
224+ return gobject.SignalConnect(x.GoPointer(), "quick-bookmark", purego.NewCallback(fcb))
225225 }
226226
227227 // Emitted when the user asks for it.
@@ -231,7 +231,7 @@ func (x *FileChooserWidget) ConnectQuickBookmark(cb func(FileChooserWidget, int)
231231 // This is used to make the file chooser show the Recent location.
232232 //
233233 // The default binding for this signal is <kbd>Alt</kbd>-<kbd>R</kbd>.
234-func (x *FileChooserWidget) ConnectRecentShortcut(cb func(FileChooserWidget)) {
234+func (x *FileChooserWidget) ConnectRecentShortcut(cb func(FileChooserWidget)) uint32 {
235235 fcb := func(clsPtr uintptr) {
236236 fa := FileChooserWidget{}
237237 fa.Ptr = clsPtr
@@ -239,7 +239,7 @@ func (x *FileChooserWidget) ConnectRecentShortcut(cb func(FileChooserWidget)) {
239239 cb(fa)
240240
241241 }
242- gobject.ObjectConnect(x.GoPointer(), "signal::recent-shortcut", purego.NewCallback(fcb))
242+ return gobject.SignalConnect(x.GoPointer(), "recent-shortcut", purego.NewCallback(fcb))
243243 }
244244
245245 // Emitted when the user asks for it.
@@ -249,7 +249,7 @@ func (x *FileChooserWidget) ConnectRecentShortcut(cb func(FileChooserWidget)) {
249249 // This is used to make the file chooser show the search entry.
250250 //
251251 // The default binding for this signal is <kbd>Alt</kbd>-<kbd>S</kbd>.
252-func (x *FileChooserWidget) ConnectSearchShortcut(cb func(FileChooserWidget)) {
252+func (x *FileChooserWidget) ConnectSearchShortcut(cb func(FileChooserWidget)) uint32 {
253253 fcb := func(clsPtr uintptr) {
254254 fa := FileChooserWidget{}
255255 fa.Ptr = clsPtr
@@ -257,7 +257,7 @@ func (x *FileChooserWidget) ConnectSearchShortcut(cb func(FileChooserWidget)) {
257257 cb(fa)
258258
259259 }
260- gobject.ObjectConnect(x.GoPointer(), "signal::search-shortcut", purego.NewCallback(fcb))
260+ return gobject.SignalConnect(x.GoPointer(), "search-shortcut", purego.NewCallback(fcb))
261261 }
262262
263263 // Emitted when the user asks for it.
@@ -267,7 +267,7 @@ func (x *FileChooserWidget) ConnectSearchShortcut(cb func(FileChooserWidget)) {
267267 // This is used to make the file chooser display hidden files.
268268 //
269269 // The default binding for this signal is <kbd>Control</kbd>-<kbd>H</kbd>.
270-func (x *FileChooserWidget) ConnectShowHidden(cb func(FileChooserWidget)) {
270+func (x *FileChooserWidget) ConnectShowHidden(cb func(FileChooserWidget)) uint32 {
271271 fcb := func(clsPtr uintptr) {
272272 fa := FileChooserWidget{}
273273 fa.Ptr = clsPtr
@@ -275,7 +275,7 @@ func (x *FileChooserWidget) ConnectShowHidden(cb func(FileChooserWidget)) {
275275 cb(fa)
276276
277277 }
278- gobject.ObjectConnect(x.GoPointer(), "signal::show-hidden", purego.NewCallback(fcb))
278+ return gobject.SignalConnect(x.GoPointer(), "show-hidden", purego.NewCallback(fcb))
279279 }
280280
281281 // Emitted when the user asks for it.
@@ -286,7 +286,7 @@ func (x *FileChooserWidget) ConnectShowHidden(cb func(FileChooserWidget)) {
286286 // of the current folder in the file hierarchy.
287287 //
288288 // The default binding for this signal is <kbd>Alt</kbd>-<kbd>Up</kbd>.
289-func (x *FileChooserWidget) ConnectUpFolder(cb func(FileChooserWidget)) {
289+func (x *FileChooserWidget) ConnectUpFolder(cb func(FileChooserWidget)) uint32 {
290290 fcb := func(clsPtr uintptr) {
291291 fa := FileChooserWidget{}
292292 fa.Ptr = clsPtr
@@ -294,7 +294,7 @@ func (x *FileChooserWidget) ConnectUpFolder(cb func(FileChooserWidget)) {
294294 cb(fa)
295295
296296 }
297- gobject.ObjectConnect(x.GoPointer(), "signal::up-folder", purego.NewCallback(fcb))
297+ return gobject.SignalConnect(x.GoPointer(), "up-folder", purego.NewCallback(fcb))
298298 }
299299
300300 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkfilter.go +2 -2
@@ -146,7 +146,7 @@ func (c *Filter) SetGoPointer(ptr uintptr) {
146146 // Depending on the @change parameter, not all items need
147147 // to be checked, but only some. Refer to the [enum@Gtk.FilterChange]
148148 // documentation for details.
149-func (x *Filter) ConnectChanged(cb func(Filter, FilterChange)) {
149+func (x *Filter) ConnectChanged(cb func(Filter, FilterChange)) uint32 {
150150 fcb := func(clsPtr uintptr, ChangeVarp FilterChange) {
151151 fa := Filter{}
152152 fa.Ptr = clsPtr
@@ -154,7 +154,7 @@ func (x *Filter) ConnectChanged(cb func(Filter, FilterChange)) {
154154 cb(fa, ChangeVarp)
155155
156156 }
157- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
157+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
158158 }
159159
160160 func init() {
M v4/gtk/gtkflowbox.go +16 -16
@@ -530,7 +530,7 @@ func (c *FlowBox) SetGoPointer(ptr uintptr) {
530530 // Emitted when the user activates the @box.
531531 //
532532 // This is a [keybinding signal](class.SignalAction.html).
533-func (x *FlowBox) ConnectActivateCursorChild(cb func(FlowBox)) {
533+func (x *FlowBox) ConnectActivateCursorChild(cb func(FlowBox)) uint32 {
534534 fcb := func(clsPtr uintptr) {
535535 fa := FlowBox{}
536536 fa.Ptr = clsPtr
@@ -538,11 +538,11 @@ func (x *FlowBox) ConnectActivateCursorChild(cb func(FlowBox)) {
538538 cb(fa)
539539
540540 }
541- gobject.ObjectConnect(x.GoPointer(), "signal::activate-cursor-child", purego.NewCallback(fcb))
541+ return gobject.SignalConnect(x.GoPointer(), "activate-cursor-child", purego.NewCallback(fcb))
542542 }
543543
544544 // Emitted when a child has been activated by the user.
545-func (x *FlowBox) ConnectChildActivated(cb func(FlowBox, uintptr)) {
545+func (x *FlowBox) ConnectChildActivated(cb func(FlowBox, uintptr)) uint32 {
546546 fcb := func(clsPtr uintptr, ChildVarp uintptr) {
547547 fa := FlowBox{}
548548 fa.Ptr = clsPtr
@@ -550,7 +550,7 @@ func (x *FlowBox) ConnectChildActivated(cb func(FlowBox, uintptr)) {
550550 cb(fa, ChildVarp)
551551
552552 }
553- gobject.ObjectConnect(x.GoPointer(), "signal::child-activated", purego.NewCallback(fcb))
553+ return gobject.SignalConnect(x.GoPointer(), "child-activated", purego.NewCallback(fcb))
554554 }
555555
556556 // Emitted when the user initiates a cursor movement.
@@ -569,7 +569,7 @@ func (x *FlowBox) ConnectChildActivated(cb func(FlowBox, uintptr)) {
569569 // move by individual children
570570 // - <kbd>Home</kbd>, <kbd>End</kbd> move to the ends of the box
571571 // - <kbd>PgUp</kbd>, <kbd>PgDn</kbd> move vertically by pages
572-func (x *FlowBox) ConnectMoveCursor(cb func(FlowBox, MovementStep, int, bool, bool) bool) {
572+func (x *FlowBox) ConnectMoveCursor(cb func(FlowBox, MovementStep, int, bool, bool) bool) uint32 {
573573 fcb := func(clsPtr uintptr, StepVarp MovementStep, CountVarp int, ExtendVarp bool, ModifyVarp bool) bool {
574574 fa := FlowBox{}
575575 fa.Ptr = clsPtr
@@ -577,7 +577,7 @@ func (x *FlowBox) ConnectMoveCursor(cb func(FlowBox, MovementStep, int, bool, bo
577577 return cb(fa, StepVarp, CountVarp, ExtendVarp, ModifyVarp)
578578
579579 }
580- gobject.ObjectConnect(x.GoPointer(), "signal::move-cursor", purego.NewCallback(fcb))
580+ return gobject.SignalConnect(x.GoPointer(), "move-cursor", purego.NewCallback(fcb))
581581 }
582582
583583 // Emitted to select all children of the box,
@@ -586,7 +586,7 @@ func (x *FlowBox) ConnectMoveCursor(cb func(FlowBox, MovementStep, int, bool, bo
586586 // This is a [keybinding signal](class.SignalAction.html).
587587 //
588588 // The default bindings for this signal is <kbd>Ctrl</kbd>-<kbd>a</kbd>.
589-func (x *FlowBox) ConnectSelectAll(cb func(FlowBox)) {
589+func (x *FlowBox) ConnectSelectAll(cb func(FlowBox)) uint32 {
590590 fcb := func(clsPtr uintptr) {
591591 fa := FlowBox{}
592592 fa.Ptr = clsPtr
@@ -594,7 +594,7 @@ func (x *FlowBox) ConnectSelectAll(cb func(FlowBox)) {
594594 cb(fa)
595595
596596 }
597- gobject.ObjectConnect(x.GoPointer(), "signal::select-all", purego.NewCallback(fcb))
597+ return gobject.SignalConnect(x.GoPointer(), "select-all", purego.NewCallback(fcb))
598598 }
599599
600600 // Emitted when the set of selected children changes.
@@ -602,7 +602,7 @@ func (x *FlowBox) ConnectSelectAll(cb func(FlowBox)) {
602602 // Use [method@Gtk.FlowBox.selected_foreach] or
603603 // [method@Gtk.FlowBox.get_selected_children] to obtain the
604604 // selected children.
605-func (x *FlowBox) ConnectSelectedChildrenChanged(cb func(FlowBox)) {
605+func (x *FlowBox) ConnectSelectedChildrenChanged(cb func(FlowBox)) uint32 {
606606 fcb := func(clsPtr uintptr) {
607607 fa := FlowBox{}
608608 fa.Ptr = clsPtr
@@ -610,7 +610,7 @@ func (x *FlowBox) ConnectSelectedChildrenChanged(cb func(FlowBox)) {
610610 cb(fa)
611611
612612 }
613- gobject.ObjectConnect(x.GoPointer(), "signal::selected-children-changed", purego.NewCallback(fcb))
613+ return gobject.SignalConnect(x.GoPointer(), "selected-children-changed", purego.NewCallback(fcb))
614614 }
615615
616616 // Emitted to toggle the selection of the child that has the focus.
@@ -618,7 +618,7 @@ func (x *FlowBox) ConnectSelectedChildrenChanged(cb func(FlowBox)) {
618618 // This is a [keybinding signal](class.SignalAction.html).
619619 //
620620 // The default binding for this signal is <kbd>Ctrl</kbd>-<kbd>Space</kbd>.
621-func (x *FlowBox) ConnectToggleCursorChild(cb func(FlowBox)) {
621+func (x *FlowBox) ConnectToggleCursorChild(cb func(FlowBox)) uint32 {
622622 fcb := func(clsPtr uintptr) {
623623 fa := FlowBox{}
624624 fa.Ptr = clsPtr
@@ -626,7 +626,7 @@ func (x *FlowBox) ConnectToggleCursorChild(cb func(FlowBox)) {
626626 cb(fa)
627627
628628 }
629- gobject.ObjectConnect(x.GoPointer(), "signal::toggle-cursor-child", purego.NewCallback(fcb))
629+ return gobject.SignalConnect(x.GoPointer(), "toggle-cursor-child", purego.NewCallback(fcb))
630630 }
631631
632632 // Emitted to unselect all children of the box,
@@ -635,7 +635,7 @@ func (x *FlowBox) ConnectToggleCursorChild(cb func(FlowBox)) {
635635 // This is a [keybinding signal](class.SignalAction.html).
636636 //
637637 // The default bindings for this signal is <kbd>Ctrl</kbd>-<kbd>Shift</kbd>-<kbd>a</kbd>.
638-func (x *FlowBox) ConnectUnselectAll(cb func(FlowBox)) {
638+func (x *FlowBox) ConnectUnselectAll(cb func(FlowBox)) uint32 {
639639 fcb := func(clsPtr uintptr) {
640640 fa := FlowBox{}
641641 fa.Ptr = clsPtr
@@ -643,7 +643,7 @@ func (x *FlowBox) ConnectUnselectAll(cb func(FlowBox)) {
643643 cb(fa)
644644
645645 }
646- gobject.ObjectConnect(x.GoPointer(), "signal::unselect-all", purego.NewCallback(fcb))
646+ return gobject.SignalConnect(x.GoPointer(), "unselect-all", purego.NewCallback(fcb))
647647 }
648648
649649 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
@@ -922,7 +922,7 @@ func (c *FlowBoxChild) SetGoPointer(ptr uintptr) {
922922 // but it can be used by applications for their own purposes.
923923 //
924924 // The default bindings are <kbd>Space</kbd> and <kbd>Enter</kbd>.
925-func (x *FlowBoxChild) ConnectActivate(cb func(FlowBoxChild)) {
925+func (x *FlowBoxChild) ConnectActivate(cb func(FlowBoxChild)) uint32 {
926926 fcb := func(clsPtr uintptr) {
927927 fa := FlowBoxChild{}
928928 fa.Ptr = clsPtr
@@ -930,7 +930,7 @@ func (x *FlowBoxChild) ConnectActivate(cb func(FlowBoxChild)) {
930930 cb(fa)
931931
932932 }
933- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
933+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
934934 }
935935
936936 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkfontbutton.go +4 -4
@@ -158,7 +158,7 @@ func (c *FontButton) SetGoPointer(ptr uintptr) {
158158 //
159159 // The `::activate` signal on `GtkFontButton` is an action signal and
160160 // emitting it causes the button to present its dialog.
161-func (x *FontButton) ConnectActivate(cb func(FontButton)) {
161+func (x *FontButton) ConnectActivate(cb func(FontButton)) uint32 {
162162 fcb := func(clsPtr uintptr) {
163163 fa := FontButton{}
164164 fa.Ptr = clsPtr
@@ -166,7 +166,7 @@ func (x *FontButton) ConnectActivate(cb func(FontButton)) {
166166 cb(fa)
167167
168168 }
169- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
169+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
170170 }
171171
172172 // Emitted when the user selects a font.
@@ -177,7 +177,7 @@ func (x *FontButton) ConnectActivate(cb func(FontButton)) {
177177 // Note that this signal is only emitted when the user changes the font.
178178 // If you need to react to programmatic font changes as well, use
179179 // the notify::font signal.
180-func (x *FontButton) ConnectFontSet(cb func(FontButton)) {
180+func (x *FontButton) ConnectFontSet(cb func(FontButton)) uint32 {
181181 fcb := func(clsPtr uintptr) {
182182 fa := FontButton{}
183183 fa.Ptr = clsPtr
@@ -185,7 +185,7 @@ func (x *FontButton) ConnectFontSet(cb func(FontButton)) {
185185 cb(fa)
186186
187187 }
188- gobject.ObjectConnect(x.GoPointer(), "signal::font-set", purego.NewCallback(fcb))
188+ return gobject.SignalConnect(x.GoPointer(), "font-set", purego.NewCallback(fcb))
189189 }
190190
191191 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkgesture.go +10 -10
@@ -396,7 +396,7 @@ func (c *Gesture) SetGoPointer(ptr uintptr) {
396396 // (eg. a third touch on a 2-touches gesture) is lifted, in that
397397 // situation @sequence won't pertain to the current set of active
398398 // touches, so don't rely on this being true.
399-func (x *Gesture) ConnectBegin(cb func(Gesture, uintptr)) {
399+func (x *Gesture) ConnectBegin(cb func(Gesture, uintptr)) uint32 {
400400 fcb := func(clsPtr uintptr, SequenceVarp uintptr) {
401401 fa := Gesture{}
402402 fa.Ptr = clsPtr
@@ -404,7 +404,7 @@ func (x *Gesture) ConnectBegin(cb func(Gesture, uintptr)) {
404404 cb(fa, SequenceVarp)
405405
406406 }
407- gobject.ObjectConnect(x.GoPointer(), "signal::begin", purego.NewCallback(fcb))
407+ return gobject.SignalConnect(x.GoPointer(), "begin", purego.NewCallback(fcb))
408408 }
409409
410410 // Emitted whenever a sequence is cancelled.
@@ -417,7 +417,7 @@ func (x *Gesture) ConnectBegin(cb func(Gesture, uintptr)) {
417417 //
418418 // @gesture must forget everything about @sequence as in
419419 // response to this signal.
420-func (x *Gesture) ConnectCancel(cb func(Gesture, uintptr)) {
420+func (x *Gesture) ConnectCancel(cb func(Gesture, uintptr)) uint32 {
421421 fcb := func(clsPtr uintptr, SequenceVarp uintptr) {
422422 fa := Gesture{}
423423 fa.Ptr = clsPtr
@@ -425,7 +425,7 @@ func (x *Gesture) ConnectCancel(cb func(Gesture, uintptr)) {
425425 cb(fa, SequenceVarp)
426426
427427 }
428- gobject.ObjectConnect(x.GoPointer(), "signal::cancel", purego.NewCallback(fcb))
428+ return gobject.SignalConnect(x.GoPointer(), "cancel", purego.NewCallback(fcb))
429429 }
430430
431431 // Emitted when @gesture either stopped recognizing the event
@@ -437,7 +437,7 @@ func (x *Gesture) ConnectCancel(cb func(Gesture, uintptr)) {
437437 // pressed touch sequence that exceeds [property@Gtk.Gesture:n-points]).
438438 // This situation may be detected by checking through
439439 // [method@Gtk.Gesture.handles_sequence].
440-func (x *Gesture) ConnectEnd(cb func(Gesture, uintptr)) {
440+func (x *Gesture) ConnectEnd(cb func(Gesture, uintptr)) uint32 {
441441 fcb := func(clsPtr uintptr, SequenceVarp uintptr) {
442442 fa := Gesture{}
443443 fa.Ptr = clsPtr
@@ -445,14 +445,14 @@ func (x *Gesture) ConnectEnd(cb func(Gesture, uintptr)) {
445445 cb(fa, SequenceVarp)
446446
447447 }
448- gobject.ObjectConnect(x.GoPointer(), "signal::end", purego.NewCallback(fcb))
448+ return gobject.SignalConnect(x.GoPointer(), "end", purego.NewCallback(fcb))
449449 }
450450
451451 // Emitted whenever a sequence state changes.
452452 //
453453 // See [method@Gtk.Gesture.set_sequence_state] to know
454454 // more about the expectable sequence lifetimes.
455-func (x *Gesture) ConnectSequenceStateChanged(cb func(Gesture, uintptr, EventSequenceState)) {
455+func (x *Gesture) ConnectSequenceStateChanged(cb func(Gesture, uintptr, EventSequenceState)) uint32 {
456456 fcb := func(clsPtr uintptr, SequenceVarp uintptr, StateVarp EventSequenceState) {
457457 fa := Gesture{}
458458 fa.Ptr = clsPtr
@@ -460,13 +460,13 @@ func (x *Gesture) ConnectSequenceStateChanged(cb func(Gesture, uintptr, EventSeq
460460 cb(fa, SequenceVarp, StateVarp)
461461
462462 }
463- gobject.ObjectConnect(x.GoPointer(), "signal::sequence-state-changed", purego.NewCallback(fcb))
463+ return gobject.SignalConnect(x.GoPointer(), "sequence-state-changed", purego.NewCallback(fcb))
464464 }
465465
466466 // Emitted whenever an event is handled while the gesture is recognized.
467467 //
468468 // @sequence is guaranteed to pertain to the set of active touches.
469-func (x *Gesture) ConnectUpdate(cb func(Gesture, uintptr)) {
469+func (x *Gesture) ConnectUpdate(cb func(Gesture, uintptr)) uint32 {
470470 fcb := func(clsPtr uintptr, SequenceVarp uintptr) {
471471 fa := Gesture{}
472472 fa.Ptr = clsPtr
@@ -474,7 +474,7 @@ func (x *Gesture) ConnectUpdate(cb func(Gesture, uintptr)) {
474474 cb(fa, SequenceVarp)
475475
476476 }
477- gobject.ObjectConnect(x.GoPointer(), "signal::update", purego.NewCallback(fcb))
477+ return gobject.SignalConnect(x.GoPointer(), "update", purego.NewCallback(fcb))
478478 }
479479
480480 func init() {
M v4/gtk/gtkgestureclick.go +8 -8
@@ -53,7 +53,7 @@ func (c *GestureClick) SetGoPointer(ptr uintptr) {
5353 }
5454
5555 // Emitted whenever a button or touch press happens.
56-func (x *GestureClick) ConnectPressed(cb func(GestureClick, int, float64, float64)) {
56+func (x *GestureClick) ConnectPressed(cb func(GestureClick, int, float64, float64)) uint32 {
5757 fcb := func(clsPtr uintptr, NPressVarp int, XVarp float64, YVarp float64) {
5858 fa := GestureClick{}
5959 fa.Ptr = clsPtr
@@ -61,7 +61,7 @@ func (x *GestureClick) ConnectPressed(cb func(GestureClick, int, float64, float6
6161 cb(fa, NPressVarp, XVarp, YVarp)
6262
6363 }
64- gobject.ObjectConnect(x.GoPointer(), "signal::pressed", purego.NewCallback(fcb))
64+ return gobject.SignalConnect(x.GoPointer(), "pressed", purego.NewCallback(fcb))
6565 }
6666
6767 // Emitted when a button or touch is released.
@@ -70,7 +70,7 @@ func (x *GestureClick) ConnectPressed(cb func(GestureClick, int, float64, float6
7070 // this event, note that [signal@Gtk.GestureClick::stopped] may
7171 // have been emitted between the press and its release, @n_press
7272 // will only start over at the next press.
73-func (x *GestureClick) ConnectReleased(cb func(GestureClick, int, float64, float64)) {
73+func (x *GestureClick) ConnectReleased(cb func(GestureClick, int, float64, float64)) uint32 {
7474 fcb := func(clsPtr uintptr, NPressVarp int, XVarp float64, YVarp float64) {
7575 fa := GestureClick{}
7676 fa.Ptr = clsPtr
@@ -78,11 +78,11 @@ func (x *GestureClick) ConnectReleased(cb func(GestureClick, int, float64, float
7878 cb(fa, NPressVarp, XVarp, YVarp)
7979
8080 }
81- gobject.ObjectConnect(x.GoPointer(), "signal::released", purego.NewCallback(fcb))
81+ return gobject.SignalConnect(x.GoPointer(), "released", purego.NewCallback(fcb))
8282 }
8383
8484 // Emitted whenever any time/distance threshold has been exceeded.
85-func (x *GestureClick) ConnectStopped(cb func(GestureClick)) {
85+func (x *GestureClick) ConnectStopped(cb func(GestureClick)) uint32 {
8686 fcb := func(clsPtr uintptr) {
8787 fa := GestureClick{}
8888 fa.Ptr = clsPtr
@@ -90,7 +90,7 @@ func (x *GestureClick) ConnectStopped(cb func(GestureClick)) {
9090 cb(fa)
9191
9292 }
93- gobject.ObjectConnect(x.GoPointer(), "signal::stopped", purego.NewCallback(fcb))
93+ return gobject.SignalConnect(x.GoPointer(), "stopped", purego.NewCallback(fcb))
9494 }
9595
9696 // Emitted whenever the gesture receives a release
@@ -99,7 +99,7 @@ func (x *GestureClick) ConnectStopped(cb func(GestureClick)) {
9999 // Due to implicit grabs, this can only happen on situations
100100 // where input is grabbed elsewhere mid-press or the pressed
101101 // widget voluntarily relinquishes its implicit grab.
102-func (x *GestureClick) ConnectUnpairedRelease(cb func(GestureClick, float64, float64, uint, uintptr)) {
102+func (x *GestureClick) ConnectUnpairedRelease(cb func(GestureClick, float64, float64, uint, uintptr)) uint32 {
103103 fcb := func(clsPtr uintptr, XVarp float64, YVarp float64, ButtonVarp uint, SequenceVarp uintptr) {
104104 fa := GestureClick{}
105105 fa.Ptr = clsPtr
@@ -107,7 +107,7 @@ func (x *GestureClick) ConnectUnpairedRelease(cb func(GestureClick, float64, flo
107107 cb(fa, XVarp, YVarp, ButtonVarp, SequenceVarp)
108108
109109 }
110- gobject.ObjectConnect(x.GoPointer(), "signal::unpaired-release", purego.NewCallback(fcb))
110+ return gobject.SignalConnect(x.GoPointer(), "unpaired-release", purego.NewCallback(fcb))
111111 }
112112
113113 func init() {
M v4/gtk/gtkgesturedrag.go +6 -6
@@ -80,7 +80,7 @@ func (c *GestureDrag) SetGoPointer(ptr uintptr) {
8080 }
8181
8282 // Emitted whenever dragging starts.
83-func (x *GestureDrag) ConnectDragBegin(cb func(GestureDrag, float64, float64)) {
83+func (x *GestureDrag) ConnectDragBegin(cb func(GestureDrag, float64, float64)) uint32 {
8484 fcb := func(clsPtr uintptr, StartXVarp float64, StartYVarp float64) {
8585 fa := GestureDrag{}
8686 fa.Ptr = clsPtr
@@ -88,11 +88,11 @@ func (x *GestureDrag) ConnectDragBegin(cb func(GestureDrag, float64, float64)) {
8888 cb(fa, StartXVarp, StartYVarp)
8989
9090 }
91- gobject.ObjectConnect(x.GoPointer(), "signal::drag-begin", purego.NewCallback(fcb))
91+ return gobject.SignalConnect(x.GoPointer(), "drag-begin", purego.NewCallback(fcb))
9292 }
9393
9494 // Emitted whenever the dragging is finished.
95-func (x *GestureDrag) ConnectDragEnd(cb func(GestureDrag, float64, float64)) {
95+func (x *GestureDrag) ConnectDragEnd(cb func(GestureDrag, float64, float64)) uint32 {
9696 fcb := func(clsPtr uintptr, OffsetXVarp float64, OffsetYVarp float64) {
9797 fa := GestureDrag{}
9898 fa.Ptr = clsPtr
@@ -100,11 +100,11 @@ func (x *GestureDrag) ConnectDragEnd(cb func(GestureDrag, float64, float64)) {
100100 cb(fa, OffsetXVarp, OffsetYVarp)
101101
102102 }
103- gobject.ObjectConnect(x.GoPointer(), "signal::drag-end", purego.NewCallback(fcb))
103+ return gobject.SignalConnect(x.GoPointer(), "drag-end", purego.NewCallback(fcb))
104104 }
105105
106106 // Emitted whenever the dragging point moves.
107-func (x *GestureDrag) ConnectDragUpdate(cb func(GestureDrag, float64, float64)) {
107+func (x *GestureDrag) ConnectDragUpdate(cb func(GestureDrag, float64, float64)) uint32 {
108108 fcb := func(clsPtr uintptr, OffsetXVarp float64, OffsetYVarp float64) {
109109 fa := GestureDrag{}
110110 fa.Ptr = clsPtr
@@ -112,7 +112,7 @@ func (x *GestureDrag) ConnectDragUpdate(cb func(GestureDrag, float64, float64))
112112 cb(fa, OffsetXVarp, OffsetYVarp)
113113
114114 }
115- gobject.ObjectConnect(x.GoPointer(), "signal::drag-update", purego.NewCallback(fcb))
115+ return gobject.SignalConnect(x.GoPointer(), "drag-update", purego.NewCallback(fcb))
116116 }
117117
118118 func init() {
M v4/gtk/gtkgesturelongpress.go +4 -4
@@ -82,7 +82,7 @@ func (c *GestureLongPress) SetGoPointer(ptr uintptr) {
8282
8383 // Emitted whenever a press moved too far, or was released
8484 // before [signal@Gtk.GestureLongPress::pressed] happened.
85-func (x *GestureLongPress) ConnectCancelled(cb func(GestureLongPress)) {
85+func (x *GestureLongPress) ConnectCancelled(cb func(GestureLongPress)) uint32 {
8686 fcb := func(clsPtr uintptr) {
8787 fa := GestureLongPress{}
8888 fa.Ptr = clsPtr
@@ -90,12 +90,12 @@ func (x *GestureLongPress) ConnectCancelled(cb func(GestureLongPress)) {
9090 cb(fa)
9191
9292 }
93- gobject.ObjectConnect(x.GoPointer(), "signal::cancelled", purego.NewCallback(fcb))
93+ return gobject.SignalConnect(x.GoPointer(), "cancelled", purego.NewCallback(fcb))
9494 }
9595
9696 // Emitted whenever a press goes unmoved/unreleased longer than
9797 // what the GTK defaults tell.
98-func (x *GestureLongPress) ConnectPressed(cb func(GestureLongPress, float64, float64)) {
98+func (x *GestureLongPress) ConnectPressed(cb func(GestureLongPress, float64, float64)) uint32 {
9999 fcb := func(clsPtr uintptr, XVarp float64, YVarp float64) {
100100 fa := GestureLongPress{}
101101 fa.Ptr = clsPtr
@@ -103,7 +103,7 @@ func (x *GestureLongPress) ConnectPressed(cb func(GestureLongPress, float64, flo
103103 cb(fa, XVarp, YVarp)
104104
105105 }
106- gobject.ObjectConnect(x.GoPointer(), "signal::pressed", purego.NewCallback(fcb))
106+ return gobject.SignalConnect(x.GoPointer(), "pressed", purego.NewCallback(fcb))
107107 }
108108
109109 func init() {
M v4/gtk/gtkgesturepan.go +2 -2
@@ -77,7 +77,7 @@ func (c *GesturePan) SetGoPointer(ptr uintptr) {
7777 }
7878
7979 // Emitted once a panning gesture along the expected axis is detected.
80-func (x *GesturePan) ConnectPan(cb func(GesturePan, PanDirection, float64)) {
80+func (x *GesturePan) ConnectPan(cb func(GesturePan, PanDirection, float64)) uint32 {
8181 fcb := func(clsPtr uintptr, DirectionVarp PanDirection, OffsetVarp float64) {
8282 fa := GesturePan{}
8383 fa.Ptr = clsPtr
@@ -85,7 +85,7 @@ func (x *GesturePan) ConnectPan(cb func(GesturePan, PanDirection, float64)) {
8585 cb(fa, DirectionVarp, OffsetVarp)
8686
8787 }
88- gobject.ObjectConnect(x.GoPointer(), "signal::pan", purego.NewCallback(fcb))
88+ return gobject.SignalConnect(x.GoPointer(), "pan", purego.NewCallback(fcb))
8989 }
9090
9191 func init() {
M v4/gtk/gtkgesturerotate.go +2 -2
@@ -63,7 +63,7 @@ func (c *GestureRotate) SetGoPointer(ptr uintptr) {
6363 }
6464
6565 // Emitted when the angle between both tracked points changes.
66-func (x *GestureRotate) ConnectAngleChanged(cb func(GestureRotate, float64, float64)) {
66+func (x *GestureRotate) ConnectAngleChanged(cb func(GestureRotate, float64, float64)) uint32 {
6767 fcb := func(clsPtr uintptr, AngleVarp float64, AngleDeltaVarp float64) {
6868 fa := GestureRotate{}
6969 fa.Ptr = clsPtr
@@ -71,7 +71,7 @@ func (x *GestureRotate) ConnectAngleChanged(cb func(GestureRotate, float64, floa
7171 cb(fa, AngleVarp, AngleDeltaVarp)
7272
7373 }
74- gobject.ObjectConnect(x.GoPointer(), "signal::angle-changed", purego.NewCallback(fcb))
74+ return gobject.SignalConnect(x.GoPointer(), "angle-changed", purego.NewCallback(fcb))
7575 }
7676
7777 func init() {
M v4/gtk/gtkgesturestylus.go +8 -8
@@ -121,7 +121,7 @@ func (c *GestureStylus) SetGoPointer(ptr uintptr) {
121121 }
122122
123123 // Emitted when the stylus touches the device.
124-func (x *GestureStylus) ConnectDown(cb func(GestureStylus, float64, float64)) {
124+func (x *GestureStylus) ConnectDown(cb func(GestureStylus, float64, float64)) uint32 {
125125 fcb := func(clsPtr uintptr, XVarp float64, YVarp float64) {
126126 fa := GestureStylus{}
127127 fa.Ptr = clsPtr
@@ -129,11 +129,11 @@ func (x *GestureStylus) ConnectDown(cb func(GestureStylus, float64, float64)) {
129129 cb(fa, XVarp, YVarp)
130130
131131 }
132- gobject.ObjectConnect(x.GoPointer(), "signal::down", purego.NewCallback(fcb))
132+ return gobject.SignalConnect(x.GoPointer(), "down", purego.NewCallback(fcb))
133133 }
134134
135135 // Emitted when the stylus moves while touching the device.
136-func (x *GestureStylus) ConnectMotion(cb func(GestureStylus, float64, float64)) {
136+func (x *GestureStylus) ConnectMotion(cb func(GestureStylus, float64, float64)) uint32 {
137137 fcb := func(clsPtr uintptr, XVarp float64, YVarp float64) {
138138 fa := GestureStylus{}
139139 fa.Ptr = clsPtr
@@ -141,11 +141,11 @@ func (x *GestureStylus) ConnectMotion(cb func(GestureStylus, float64, float64))
141141 cb(fa, XVarp, YVarp)
142142
143143 }
144- gobject.ObjectConnect(x.GoPointer(), "signal::motion", purego.NewCallback(fcb))
144+ return gobject.SignalConnect(x.GoPointer(), "motion", purego.NewCallback(fcb))
145145 }
146146
147147 // Emitted when the stylus is in proximity of the device.
148-func (x *GestureStylus) ConnectProximity(cb func(GestureStylus, float64, float64)) {
148+func (x *GestureStylus) ConnectProximity(cb func(GestureStylus, float64, float64)) uint32 {
149149 fcb := func(clsPtr uintptr, XVarp float64, YVarp float64) {
150150 fa := GestureStylus{}
151151 fa.Ptr = clsPtr
@@ -153,11 +153,11 @@ func (x *GestureStylus) ConnectProximity(cb func(GestureStylus, float64, float64
153153 cb(fa, XVarp, YVarp)
154154
155155 }
156- gobject.ObjectConnect(x.GoPointer(), "signal::proximity", purego.NewCallback(fcb))
156+ return gobject.SignalConnect(x.GoPointer(), "proximity", purego.NewCallback(fcb))
157157 }
158158
159159 // Emitted when the stylus no longer touches the device.
160-func (x *GestureStylus) ConnectUp(cb func(GestureStylus, float64, float64)) {
160+func (x *GestureStylus) ConnectUp(cb func(GestureStylus, float64, float64)) uint32 {
161161 fcb := func(clsPtr uintptr, XVarp float64, YVarp float64) {
162162 fa := GestureStylus{}
163163 fa.Ptr = clsPtr
@@ -165,7 +165,7 @@ func (x *GestureStylus) ConnectUp(cb func(GestureStylus, float64, float64)) {
165165 cb(fa, XVarp, YVarp)
166166
167167 }
168- gobject.ObjectConnect(x.GoPointer(), "signal::up", purego.NewCallback(fcb))
168+ return gobject.SignalConnect(x.GoPointer(), "up", purego.NewCallback(fcb))
169169 }
170170
171171 func init() {
M v4/gtk/gtkgestureswipe.go +2 -2
@@ -72,7 +72,7 @@ func (c *GestureSwipe) SetGoPointer(ptr uintptr) {
7272 // Emitted when the recognized gesture is finished.
7373 //
7474 // Velocity and direction are a product of previously recorded events.
75-func (x *GestureSwipe) ConnectSwipe(cb func(GestureSwipe, float64, float64)) {
75+func (x *GestureSwipe) ConnectSwipe(cb func(GestureSwipe, float64, float64)) uint32 {
7676 fcb := func(clsPtr uintptr, VelocityXVarp float64, VelocityYVarp float64) {
7777 fa := GestureSwipe{}
7878 fa.Ptr = clsPtr
@@ -80,7 +80,7 @@ func (x *GestureSwipe) ConnectSwipe(cb func(GestureSwipe, float64, float64)) {
8080 cb(fa, VelocityXVarp, VelocityYVarp)
8181
8282 }
83- gobject.ObjectConnect(x.GoPointer(), "signal::swipe", purego.NewCallback(fcb))
83+ return gobject.SignalConnect(x.GoPointer(), "swipe", purego.NewCallback(fcb))
8484 }
8585
8686 func init() {
M v4/gtk/gtkgesturezoom.go +2 -2
@@ -65,7 +65,7 @@ func (c *GestureZoom) SetGoPointer(ptr uintptr) {
6565 }
6666
6767 // Emitted whenever the distance between both tracked sequences changes.
68-func (x *GestureZoom) ConnectScaleChanged(cb func(GestureZoom, float64)) {
68+func (x *GestureZoom) ConnectScaleChanged(cb func(GestureZoom, float64)) uint32 {
6969 fcb := func(clsPtr uintptr, ScaleVarp float64) {
7070 fa := GestureZoom{}
7171 fa.Ptr = clsPtr
@@ -73,7 +73,7 @@ func (x *GestureZoom) ConnectScaleChanged(cb func(GestureZoom, float64)) {
7373 cb(fa, ScaleVarp)
7474
7575 }
76- gobject.ObjectConnect(x.GoPointer(), "signal::scale-changed", purego.NewCallback(fcb))
76+ return gobject.SignalConnect(x.GoPointer(), "scale-changed", purego.NewCallback(fcb))
7777 }
7878
7979 func init() {
M v4/gtk/gtkglarea.go +6 -6
@@ -372,7 +372,7 @@ func (c *GLArea) SetGoPointer(ptr uintptr) {
372372 // If context creation fails then the signal handler can use
373373 // [method@Gtk.GLArea.set_error] to register a more detailed error
374374 // of how the construction failed.
375-func (x *GLArea) ConnectCreateContext(cb func(GLArea) gdk.GLContext) {
375+func (x *GLArea) ConnectCreateContext(cb func(GLArea) gdk.GLContext) uint32 {
376376 fcb := func(clsPtr uintptr) uintptr {
377377 fa := GLArea{}
378378 fa.Ptr = clsPtr
@@ -381,14 +381,14 @@ func (x *GLArea) ConnectCreateContext(cb func(GLArea) gdk.GLContext) {
381381 return CreateContextCls.Ptr
382382
383383 }
384- gobject.ObjectConnect(x.GoPointer(), "signal::create-context", purego.NewCallback(fcb))
384+ return gobject.SignalConnect(x.GoPointer(), "create-context", purego.NewCallback(fcb))
385385 }
386386
387387 // Emitted every time the contents of the `GtkGLArea` should be redrawn.
388388 //
389389 // The @context is bound to the @area prior to emitting this function,
390390 // and the buffers are painted to the window once the emission terminates.
391-func (x *GLArea) ConnectRender(cb func(GLArea, uintptr) bool) {
391+func (x *GLArea) ConnectRender(cb func(GLArea, uintptr) bool) uint32 {
392392 fcb := func(clsPtr uintptr, ContextVarp uintptr) bool {
393393 fa := GLArea{}
394394 fa.Ptr = clsPtr
@@ -396,7 +396,7 @@ func (x *GLArea) ConnectRender(cb func(GLArea, uintptr) bool) {
396396 return cb(fa, ContextVarp)
397397
398398 }
399- gobject.ObjectConnect(x.GoPointer(), "signal::render", purego.NewCallback(fcb))
399+ return gobject.SignalConnect(x.GoPointer(), "render", purego.NewCallback(fcb))
400400 }
401401
402402 // Emitted once when the widget is realized, and then each time the widget
@@ -410,7 +410,7 @@ func (x *GLArea) ConnectRender(cb func(GLArea, uintptr) bool) {
410410 // is emitted.
411411 //
412412 // The default handler sets up the GL viewport.
413-func (x *GLArea) ConnectResize(cb func(GLArea, int, int)) {
413+func (x *GLArea) ConnectResize(cb func(GLArea, int, int)) uint32 {
414414 fcb := func(clsPtr uintptr, WidthVarp int, HeightVarp int) {
415415 fa := GLArea{}
416416 fa.Ptr = clsPtr
@@ -418,7 +418,7 @@ func (x *GLArea) ConnectResize(cb func(GLArea, int, int)) {
418418 cb(fa, WidthVarp, HeightVarp)
419419
420420 }
421- gobject.ObjectConnect(x.GoPointer(), "signal::resize", purego.NewCallback(fcb))
421+ return gobject.SignalConnect(x.GoPointer(), "resize", purego.NewCallback(fcb))
422422 }
423423
424424 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkgridview.go +2 -2
@@ -234,7 +234,7 @@ func (c *GridView) SetGoPointer(ptr uintptr) {
234234 // This allows for a convenient way to handle activation in a gridview.
235235 // See [property@Gtk.ListItem:activatable] for details on how to use
236236 // this signal.
237-func (x *GridView) ConnectActivate(cb func(GridView, uint)) {
237+func (x *GridView) ConnectActivate(cb func(GridView, uint)) uint32 {
238238 fcb := func(clsPtr uintptr, PositionVarp uint) {
239239 fa := GridView{}
240240 fa.Ptr = clsPtr
@@ -242,7 +242,7 @@ func (x *GridView) ConnectActivate(cb func(GridView, uint)) {
242242 cb(fa, PositionVarp)
243243
244244 }
245- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
245+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
246246 }
247247
248248 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkicontheme.go +2 -2
@@ -581,7 +581,7 @@ func (c *IconTheme) SetGoPointer(ptr uintptr) {
581581 // This can happen becuase current icon theme is switched or
582582 // because GTK detects that a change has occurred in the
583583 // contents of the current icon theme.
584-func (x *IconTheme) ConnectChanged(cb func(IconTheme)) {
584+func (x *IconTheme) ConnectChanged(cb func(IconTheme)) uint32 {
585585 fcb := func(clsPtr uintptr) {
586586 fa := IconTheme{}
587587 fa.Ptr = clsPtr
@@ -589,7 +589,7 @@ func (x *IconTheme) ConnectChanged(cb func(IconTheme)) {
589589 cb(fa)
590590
591591 }
592- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
592+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
593593 }
594594
595595 func init() {
M v4/gtk/gtkiconview.go +16 -16
@@ -807,7 +807,7 @@ func (c *IconView) SetGoPointer(ptr uintptr) {
807807 // programmatically.
808808 //
809809 // The default bindings for this signal are Space, Return and Enter.
810-func (x *IconView) ConnectActivateCursorItem(cb func(IconView) bool) {
810+func (x *IconView) ConnectActivateCursorItem(cb func(IconView) bool) uint32 {
811811 fcb := func(clsPtr uintptr) bool {
812812 fa := IconView{}
813813 fa.Ptr = clsPtr
@@ -815,7 +815,7 @@ func (x *IconView) ConnectActivateCursorItem(cb func(IconView) bool) {
815815 return cb(fa)
816816
817817 }
818- gobject.ObjectConnect(x.GoPointer(), "signal::activate-cursor-item", purego.NewCallback(fcb))
818+ return gobject.SignalConnect(x.GoPointer(), "activate-cursor-item", purego.NewCallback(fcb))
819819 }
820820
821821 // The ::item-activated signal is emitted when the method
@@ -825,7 +825,7 @@ func (x *IconView) ConnectActivateCursorItem(cb func(IconView) bool) {
825825 // "activate-on-single-click" property set to %TRUE. It is also
826826 // emitted when a non-editable item is selected and one of the keys:
827827 // Space, Return or Enter is pressed.
828-func (x *IconView) ConnectItemActivated(cb func(IconView, uintptr)) {
828+func (x *IconView) ConnectItemActivated(cb func(IconView, uintptr)) uint32 {
829829 fcb := func(clsPtr uintptr, PathVarp uintptr) {
830830 fa := IconView{}
831831 fa.Ptr = clsPtr
@@ -833,7 +833,7 @@ func (x *IconView) ConnectItemActivated(cb func(IconView, uintptr)) {
833833 cb(fa, PathVarp)
834834
835835 }
836- gobject.ObjectConnect(x.GoPointer(), "signal::item-activated", purego.NewCallback(fcb))
836+ return gobject.SignalConnect(x.GoPointer(), "item-activated", purego.NewCallback(fcb))
837837 }
838838
839839 // The ::move-cursor signal is a
@@ -850,7 +850,7 @@ func (x *IconView) ConnectItemActivated(cb func(IconView, uintptr)) {
850850 // - PageUp/PageDown which move by "pages"
851851 // All of these will extend the selection when combined with
852852 // the Shift modifier.
853-func (x *IconView) ConnectMoveCursor(cb func(IconView, MovementStep, int, bool, bool) bool) {
853+func (x *IconView) ConnectMoveCursor(cb func(IconView, MovementStep, int, bool, bool) bool) uint32 {
854854 fcb := func(clsPtr uintptr, StepVarp MovementStep, CountVarp int, ExtendVarp bool, ModifyVarp bool) bool {
855855 fa := IconView{}
856856 fa.Ptr = clsPtr
@@ -858,7 +858,7 @@ func (x *IconView) ConnectMoveCursor(cb func(IconView, MovementStep, int, bool,
858858 return cb(fa, StepVarp, CountVarp, ExtendVarp, ModifyVarp)
859859
860860 }
861- gobject.ObjectConnect(x.GoPointer(), "signal::move-cursor", purego.NewCallback(fcb))
861+ return gobject.SignalConnect(x.GoPointer(), "move-cursor", purego.NewCallback(fcb))
862862 }
863863
864864 // A [keybinding signal][class@Gtk.SignalAction]
@@ -869,7 +869,7 @@ func (x *IconView) ConnectMoveCursor(cb func(IconView, MovementStep, int, bool,
869869 // programmatically.
870870 //
871871 // The default binding for this signal is Ctrl-a.
872-func (x *IconView) ConnectSelectAll(cb func(IconView)) {
872+func (x *IconView) ConnectSelectAll(cb func(IconView)) uint32 {
873873 fcb := func(clsPtr uintptr) {
874874 fa := IconView{}
875875 fa.Ptr = clsPtr
@@ -877,7 +877,7 @@ func (x *IconView) ConnectSelectAll(cb func(IconView)) {
877877 cb(fa)
878878
879879 }
880- gobject.ObjectConnect(x.GoPointer(), "signal::select-all", purego.NewCallback(fcb))
880+ return gobject.SignalConnect(x.GoPointer(), "select-all", purego.NewCallback(fcb))
881881 }
882882
883883 // A [keybinding signal][class@Gtk.SignalAction]
@@ -889,7 +889,7 @@ func (x *IconView) ConnectSelectAll(cb func(IconView)) {
889889 // programmatically.
890890 //
891891 // There is no default binding for this signal.
892-func (x *IconView) ConnectSelectCursorItem(cb func(IconView)) {
892+func (x *IconView) ConnectSelectCursorItem(cb func(IconView)) uint32 {
893893 fcb := func(clsPtr uintptr) {
894894 fa := IconView{}
895895 fa.Ptr = clsPtr
@@ -897,12 +897,12 @@ func (x *IconView) ConnectSelectCursorItem(cb func(IconView)) {
897897 cb(fa)
898898
899899 }
900- gobject.ObjectConnect(x.GoPointer(), "signal::select-cursor-item", purego.NewCallback(fcb))
900+ return gobject.SignalConnect(x.GoPointer(), "select-cursor-item", purego.NewCallback(fcb))
901901 }
902902
903903 // The ::selection-changed signal is emitted when the selection
904904 // (i.e. the set of selected items) changes.
905-func (x *IconView) ConnectSelectionChanged(cb func(IconView)) {
905+func (x *IconView) ConnectSelectionChanged(cb func(IconView)) uint32 {
906906 fcb := func(clsPtr uintptr) {
907907 fa := IconView{}
908908 fa.Ptr = clsPtr
@@ -910,7 +910,7 @@ func (x *IconView) ConnectSelectionChanged(cb func(IconView)) {
910910 cb(fa)
911911
912912 }
913- gobject.ObjectConnect(x.GoPointer(), "signal::selection-changed", purego.NewCallback(fcb))
913+ return gobject.SignalConnect(x.GoPointer(), "selection-changed", purego.NewCallback(fcb))
914914 }
915915
916916 // A [keybinding signal][class@Gtk.SignalAction]
@@ -923,7 +923,7 @@ func (x *IconView) ConnectSelectionChanged(cb func(IconView)) {
923923 // programmatically.
924924 //
925925 // There is no default binding for this signal is Ctrl-Space.
926-func (x *IconView) ConnectToggleCursorItem(cb func(IconView)) {
926+func (x *IconView) ConnectToggleCursorItem(cb func(IconView)) uint32 {
927927 fcb := func(clsPtr uintptr) {
928928 fa := IconView{}
929929 fa.Ptr = clsPtr
@@ -931,7 +931,7 @@ func (x *IconView) ConnectToggleCursorItem(cb func(IconView)) {
931931 cb(fa)
932932
933933 }
934- gobject.ObjectConnect(x.GoPointer(), "signal::toggle-cursor-item", purego.NewCallback(fcb))
934+ return gobject.SignalConnect(x.GoPointer(), "toggle-cursor-item", purego.NewCallback(fcb))
935935 }
936936
937937 // A [keybinding signal][class@Gtk.SignalAction]
@@ -942,7 +942,7 @@ func (x *IconView) ConnectToggleCursorItem(cb func(IconView)) {
942942 // programmatically.
943943 //
944944 // The default binding for this signal is Ctrl-Shift-a.
945-func (x *IconView) ConnectUnselectAll(cb func(IconView)) {
945+func (x *IconView) ConnectUnselectAll(cb func(IconView)) uint32 {
946946 fcb := func(clsPtr uintptr) {
947947 fa := IconView{}
948948 fa.Ptr = clsPtr
@@ -950,7 +950,7 @@ func (x *IconView) ConnectUnselectAll(cb func(IconView)) {
950950 cb(fa)
951951
952952 }
953- gobject.ObjectConnect(x.GoPointer(), "signal::unselect-all", purego.NewCallback(fcb))
953+ return gobject.SignalConnect(x.GoPointer(), "unselect-all", purego.NewCallback(fcb))
954954 }
955955
956956 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkimcontext.go +12 -12
@@ -278,7 +278,7 @@ func (c *IMContext) SetGoPointer(ptr uintptr) {
278278 //
279279 // This can be a single character immediately after a key press or
280280 // the final result of preediting.
281-func (x *IMContext) ConnectCommit(cb func(IMContext, string)) {
281+func (x *IMContext) ConnectCommit(cb func(IMContext, string)) uint32 {
282282 fcb := func(clsPtr uintptr, StrVarp string) {
283283 fa := IMContext{}
284284 fa.Ptr = clsPtr
@@ -286,12 +286,12 @@ func (x *IMContext) ConnectCommit(cb func(IMContext, string)) {
286286 cb(fa, StrVarp)
287287
288288 }
289- gobject.ObjectConnect(x.GoPointer(), "signal::commit", purego.NewCallback(fcb))
289+ return gobject.SignalConnect(x.GoPointer(), "commit", purego.NewCallback(fcb))
290290 }
291291
292292 // The ::delete-surrounding signal is emitted when the input method
293293 // needs to delete all or part of the context surrounding the cursor.
294-func (x *IMContext) ConnectDeleteSurrounding(cb func(IMContext, int, int) bool) {
294+func (x *IMContext) ConnectDeleteSurrounding(cb func(IMContext, int, int) bool) uint32 {
295295 fcb := func(clsPtr uintptr, OffsetVarp int, NCharsVarp int) bool {
296296 fa := IMContext{}
297297 fa.Ptr = clsPtr
@@ -299,7 +299,7 @@ func (x *IMContext) ConnectDeleteSurrounding(cb func(IMContext, int, int) bool)
299299 return cb(fa, OffsetVarp, NCharsVarp)
300300
301301 }
302- gobject.ObjectConnect(x.GoPointer(), "signal::delete-surrounding", purego.NewCallback(fcb))
302+ return gobject.SignalConnect(x.GoPointer(), "delete-surrounding", purego.NewCallback(fcb))
303303 }
304304
305305 // The ::preedit-changed signal is emitted whenever the preedit sequence
@@ -307,7 +307,7 @@ func (x *IMContext) ConnectDeleteSurrounding(cb func(IMContext, int, int) bool)
307307 //
308308 // It is also emitted at the end of a preedit sequence, in which case
309309 // [method@Gtk.IMContext.get_preedit_string] returns the empty string.
310-func (x *IMContext) ConnectPreeditChanged(cb func(IMContext)) {
310+func (x *IMContext) ConnectPreeditChanged(cb func(IMContext)) uint32 {
311311 fcb := func(clsPtr uintptr) {
312312 fa := IMContext{}
313313 fa.Ptr = clsPtr
@@ -315,12 +315,12 @@ func (x *IMContext) ConnectPreeditChanged(cb func(IMContext)) {
315315 cb(fa)
316316
317317 }
318- gobject.ObjectConnect(x.GoPointer(), "signal::preedit-changed", purego.NewCallback(fcb))
318+ return gobject.SignalConnect(x.GoPointer(), "preedit-changed", purego.NewCallback(fcb))
319319 }
320320
321321 // The ::preedit-end signal is emitted when a preediting sequence
322322 // has been completed or canceled.
323-func (x *IMContext) ConnectPreeditEnd(cb func(IMContext)) {
323+func (x *IMContext) ConnectPreeditEnd(cb func(IMContext)) uint32 {
324324 fcb := func(clsPtr uintptr) {
325325 fa := IMContext{}
326326 fa.Ptr = clsPtr
@@ -328,12 +328,12 @@ func (x *IMContext) ConnectPreeditEnd(cb func(IMContext)) {
328328 cb(fa)
329329
330330 }
331- gobject.ObjectConnect(x.GoPointer(), "signal::preedit-end", purego.NewCallback(fcb))
331+ return gobject.SignalConnect(x.GoPointer(), "preedit-end", purego.NewCallback(fcb))
332332 }
333333
334334 // The ::preedit-start signal is emitted when a new preediting sequence
335335 // starts.
336-func (x *IMContext) ConnectPreeditStart(cb func(IMContext)) {
336+func (x *IMContext) ConnectPreeditStart(cb func(IMContext)) uint32 {
337337 fcb := func(clsPtr uintptr) {
338338 fa := IMContext{}
339339 fa.Ptr = clsPtr
@@ -341,7 +341,7 @@ func (x *IMContext) ConnectPreeditStart(cb func(IMContext)) {
341341 cb(fa)
342342
343343 }
344- gobject.ObjectConnect(x.GoPointer(), "signal::preedit-start", purego.NewCallback(fcb))
344+ return gobject.SignalConnect(x.GoPointer(), "preedit-start", purego.NewCallback(fcb))
345345 }
346346
347347 // The ::retrieve-surrounding signal is emitted when the input method
@@ -349,7 +349,7 @@ func (x *IMContext) ConnectPreeditStart(cb func(IMContext)) {
349349 //
350350 // The callback should set the input method surrounding context by
351351 // calling the [method@Gtk.IMContext.set_surrounding] method.
352-func (x *IMContext) ConnectRetrieveSurrounding(cb func(IMContext) bool) {
352+func (x *IMContext) ConnectRetrieveSurrounding(cb func(IMContext) bool) uint32 {
353353 fcb := func(clsPtr uintptr) bool {
354354 fa := IMContext{}
355355 fa.Ptr = clsPtr
@@ -357,7 +357,7 @@ func (x *IMContext) ConnectRetrieveSurrounding(cb func(IMContext) bool) {
357357 return cb(fa)
358358
359359 }
360- gobject.ObjectConnect(x.GoPointer(), "signal::retrieve-surrounding", purego.NewCallback(fcb))
360+ return gobject.SignalConnect(x.GoPointer(), "retrieve-surrounding", purego.NewCallback(fcb))
361361 }
362362
363363 func init() {
M v4/gtk/gtkinfobar.go +4 -4
@@ -331,7 +331,7 @@ func (c *InfoBar) SetGoPointer(ptr uintptr) {
331331 // The ::close signal is a [keybinding signal](class.SignalAction.html).
332332 //
333333 // The default binding for this signal is the Escape key.
334-func (x *InfoBar) ConnectClose(cb func(InfoBar)) {
334+func (x *InfoBar) ConnectClose(cb func(InfoBar)) uint32 {
335335 fcb := func(clsPtr uintptr) {
336336 fa := InfoBar{}
337337 fa.Ptr = clsPtr
@@ -339,7 +339,7 @@ func (x *InfoBar) ConnectClose(cb func(InfoBar)) {
339339 cb(fa)
340340
341341 }
342- gobject.ObjectConnect(x.GoPointer(), "signal::close", purego.NewCallback(fcb))
342+ return gobject.SignalConnect(x.GoPointer(), "close", purego.NewCallback(fcb))
343343 }
344344
345345 // Emitted when an action widget is clicked.
@@ -347,7 +347,7 @@ func (x *InfoBar) ConnectClose(cb func(InfoBar)) {
347347 // The signal is also emitted when the application programmer
348348 // calls [method@Gtk.InfoBar.response]. The @response_id depends
349349 // on which action widget was clicked.
350-func (x *InfoBar) ConnectResponse(cb func(InfoBar, int)) {
350+func (x *InfoBar) ConnectResponse(cb func(InfoBar, int)) uint32 {
351351 fcb := func(clsPtr uintptr, ResponseIdVarp int) {
352352 fa := InfoBar{}
353353 fa.Ptr = clsPtr
@@ -355,7 +355,7 @@ func (x *InfoBar) ConnectResponse(cb func(InfoBar, int)) {
355355 cb(fa, ResponseIdVarp)
356356
357357 }
358- gobject.ObjectConnect(x.GoPointer(), "signal::response", purego.NewCallback(fcb))
358+ return gobject.SignalConnect(x.GoPointer(), "response", purego.NewCallback(fcb))
359359 }
360360
361361 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtklabel.go +8 -8
@@ -925,7 +925,7 @@ func (c *Label) SetGoPointer(ptr uintptr) {
925925 // if they need to control activation of URIs programmatically.
926926 //
927927 // The default bindings for this signal are all forms of the Enter key.
928-func (x *Label) ConnectActivateCurrentLink(cb func(Label)) {
928+func (x *Label) ConnectActivateCurrentLink(cb func(Label)) uint32 {
929929 fcb := func(clsPtr uintptr) {
930930 fa := Label{}
931931 fa.Ptr = clsPtr
@@ -933,14 +933,14 @@ func (x *Label) ConnectActivateCurrentLink(cb func(Label)) {
933933 cb(fa)
934934
935935 }
936- gobject.ObjectConnect(x.GoPointer(), "signal::activate-current-link", purego.NewCallback(fcb))
936+ return gobject.SignalConnect(x.GoPointer(), "activate-current-link", purego.NewCallback(fcb))
937937 }
938938
939939 // Gets emitted to activate a URI.
940940 //
941941 // Applications may connect to it to override the default behaviour,
942942 // which is to call gtk_show_uri().
943-func (x *Label) ConnectActivateLink(cb func(Label, string) bool) {
943+func (x *Label) ConnectActivateLink(cb func(Label, string) bool) uint32 {
944944 fcb := func(clsPtr uintptr, UriVarp string) bool {
945945 fa := Label{}
946946 fa.Ptr = clsPtr
@@ -948,7 +948,7 @@ func (x *Label) ConnectActivateLink(cb func(Label, string) bool) {
948948 return cb(fa, UriVarp)
949949
950950 }
951- gobject.ObjectConnect(x.GoPointer(), "signal::activate-link", purego.NewCallback(fcb))
951+ return gobject.SignalConnect(x.GoPointer(), "activate-link", purego.NewCallback(fcb))
952952 }
953953
954954 // Gets emitted to copy the slection to the clipboard.
@@ -956,7 +956,7 @@ func (x *Label) ConnectActivateLink(cb func(Label, string) bool) {
956956 // The ::copy-clipboard signal is a [keybinding signal](class.SignalAction.html).
957957 //
958958 // The default binding for this signal is Ctrl-c.
959-func (x *Label) ConnectCopyClipboard(cb func(Label)) {
959+func (x *Label) ConnectCopyClipboard(cb func(Label)) uint32 {
960960 fcb := func(clsPtr uintptr) {
961961 fa := Label{}
962962 fa.Ptr = clsPtr
@@ -964,7 +964,7 @@ func (x *Label) ConnectCopyClipboard(cb func(Label)) {
964964 cb(fa)
965965
966966 }
967- gobject.ObjectConnect(x.GoPointer(), "signal::copy-clipboard", purego.NewCallback(fcb))
967+ return gobject.SignalConnect(x.GoPointer(), "copy-clipboard", purego.NewCallback(fcb))
968968 }
969969
970970 // Gets emitted when the user initiates a cursor movement.
@@ -984,7 +984,7 @@ func (x *Label) ConnectCopyClipboard(cb func(Label)) {
984984 // - Arrow keys move by individual characters/lines
985985 // - Ctrl-arrow key combinations move by words/paragraphs
986986 // - Home/End keys move to the ends of the buffer
987-func (x *Label) ConnectMoveCursor(cb func(Label, MovementStep, int, bool)) {
987+func (x *Label) ConnectMoveCursor(cb func(Label, MovementStep, int, bool)) uint32 {
988988 fcb := func(clsPtr uintptr, StepVarp MovementStep, CountVarp int, ExtendSelectionVarp bool) {
989989 fa := Label{}
990990 fa.Ptr = clsPtr
@@ -992,7 +992,7 @@ func (x *Label) ConnectMoveCursor(cb func(Label, MovementStep, int, bool)) {
992992 cb(fa, StepVarp, CountVarp, ExtendSelectionVarp)
993993
994994 }
995- gobject.ObjectConnect(x.GoPointer(), "signal::move-cursor", purego.NewCallback(fcb))
995+ return gobject.SignalConnect(x.GoPointer(), "move-cursor", purego.NewCallback(fcb))
996996 }
997997
998998 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtklevelbar.go +2 -2
@@ -302,7 +302,7 @@ func (c *LevelBar) SetGoPointer(ptr uintptr) {
302302 // The signal supports detailed connections; you can connect to the
303303 // detailed signal "changed::x" in order to only receive callbacks when
304304 // the value of offset "x" changes.
305-func (x *LevelBar) ConnectOffsetChanged(cb func(LevelBar, string)) {
305+func (x *LevelBar) ConnectOffsetChanged(cb func(LevelBar, string)) uint32 {
306306 fcb := func(clsPtr uintptr, NameVarp string) {
307307 fa := LevelBar{}
308308 fa.Ptr = clsPtr
@@ -310,7 +310,7 @@ func (x *LevelBar) ConnectOffsetChanged(cb func(LevelBar, string)) {
310310 cb(fa, NameVarp)
311311
312312 }
313- gobject.ObjectConnect(x.GoPointer(), "signal::offset-changed", purego.NewCallback(fcb))
313+ return gobject.SignalConnect(x.GoPointer(), "offset-changed", purego.NewCallback(fcb))
314314 }
315315
316316 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtklinkbutton.go +2 -2
@@ -139,7 +139,7 @@ func (c *LinkButton) SetGoPointer(ptr uintptr) {
139139 // To override the default behavior, you can connect to the
140140 // ::activate-link signal and stop the propagation of the signal
141141 // by returning %TRUE from your handler.
142-func (x *LinkButton) ConnectActivateLink(cb func(LinkButton) bool) {
142+func (x *LinkButton) ConnectActivateLink(cb func(LinkButton) bool) uint32 {
143143 fcb := func(clsPtr uintptr) bool {
144144 fa := LinkButton{}
145145 fa.Ptr = clsPtr
@@ -147,7 +147,7 @@ func (x *LinkButton) ConnectActivateLink(cb func(LinkButton) bool) {
147147 return cb(fa)
148148
149149 }
150- gobject.ObjectConnect(x.GoPointer(), "signal::activate-link", purego.NewCallback(fcb))
150+ return gobject.SignalConnect(x.GoPointer(), "activate-link", purego.NewCallback(fcb))
151151 }
152152
153153 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtklistbox.go +18 -18
@@ -556,7 +556,7 @@ func (c *ListBox) SetGoPointer(ptr uintptr) {
556556 c.Ptr = ptr
557557 }
558558
559-func (x *ListBox) ConnectActivateCursorRow(cb func(ListBox)) {
559+func (x *ListBox) ConnectActivateCursorRow(cb func(ListBox)) uint32 {
560560 fcb := func(clsPtr uintptr) {
561561 fa := ListBox{}
562562 fa.Ptr = clsPtr
@@ -564,10 +564,10 @@ func (x *ListBox) ConnectActivateCursorRow(cb func(ListBox)) {
564564 cb(fa)
565565
566566 }
567- gobject.ObjectConnect(x.GoPointer(), "signal::activate-cursor-row", purego.NewCallback(fcb))
567+ return gobject.SignalConnect(x.GoPointer(), "activate-cursor-row", purego.NewCallback(fcb))
568568 }
569569
570-func (x *ListBox) ConnectMoveCursor(cb func(ListBox, MovementStep, int, bool, bool)) {
570+func (x *ListBox) ConnectMoveCursor(cb func(ListBox, MovementStep, int, bool, bool)) uint32 {
571571 fcb := func(clsPtr uintptr, ObjectVarp MovementStep, P0Varp int, P1Varp bool, P2Varp bool) {
572572 fa := ListBox{}
573573 fa.Ptr = clsPtr
@@ -575,11 +575,11 @@ func (x *ListBox) ConnectMoveCursor(cb func(ListBox, MovementStep, int, bool, bo
575575 cb(fa, ObjectVarp, P0Varp, P1Varp, P2Varp)
576576
577577 }
578- gobject.ObjectConnect(x.GoPointer(), "signal::move-cursor", purego.NewCallback(fcb))
578+ return gobject.SignalConnect(x.GoPointer(), "move-cursor", purego.NewCallback(fcb))
579579 }
580580
581581 // Emitted when a row has been activated by the user.
582-func (x *ListBox) ConnectRowActivated(cb func(ListBox, uintptr)) {
582+func (x *ListBox) ConnectRowActivated(cb func(ListBox, uintptr)) uint32 {
583583 fcb := func(clsPtr uintptr, RowVarp uintptr) {
584584 fa := ListBox{}
585585 fa.Ptr = clsPtr
@@ -587,7 +587,7 @@ func (x *ListBox) ConnectRowActivated(cb func(ListBox, uintptr)) {
587587 cb(fa, RowVarp)
588588
589589 }
590- gobject.ObjectConnect(x.GoPointer(), "signal::row-activated", purego.NewCallback(fcb))
590+ return gobject.SignalConnect(x.GoPointer(), "row-activated", purego.NewCallback(fcb))
591591 }
592592
593593 // Emitted when a new row is selected, or (with a %NULL @row)
@@ -596,7 +596,7 @@ func (x *ListBox) ConnectRowActivated(cb func(ListBox, uintptr)) {
596596 // When the @box is using %GTK_SELECTION_MULTIPLE, this signal will not
597597 // give you the full picture of selection changes, and you should use
598598 // the [signal@Gtk.ListBox::selected-rows-changed] signal instead.
599-func (x *ListBox) ConnectRowSelected(cb func(ListBox, uintptr)) {
599+func (x *ListBox) ConnectRowSelected(cb func(ListBox, uintptr)) uint32 {
600600 fcb := func(clsPtr uintptr, RowVarp uintptr) {
601601 fa := ListBox{}
602602 fa.Ptr = clsPtr
@@ -604,7 +604,7 @@ func (x *ListBox) ConnectRowSelected(cb func(ListBox, uintptr)) {
604604 cb(fa, RowVarp)
605605
606606 }
607- gobject.ObjectConnect(x.GoPointer(), "signal::row-selected", purego.NewCallback(fcb))
607+ return gobject.SignalConnect(x.GoPointer(), "row-selected", purego.NewCallback(fcb))
608608 }
609609
610610 // Emitted to select all children of the box, if the selection
@@ -613,7 +613,7 @@ func (x *ListBox) ConnectRowSelected(cb func(ListBox, uintptr)) {
613613 // This is a [keybinding signal](class.SignalAction.html).
614614 //
615615 // The default binding for this signal is <kbd>Ctrl</kbd>-<kbd>a</kbd>.
616-func (x *ListBox) ConnectSelectAll(cb func(ListBox)) {
616+func (x *ListBox) ConnectSelectAll(cb func(ListBox)) uint32 {
617617 fcb := func(clsPtr uintptr) {
618618 fa := ListBox{}
619619 fa.Ptr = clsPtr
@@ -621,11 +621,11 @@ func (x *ListBox) ConnectSelectAll(cb func(ListBox)) {
621621 cb(fa)
622622
623623 }
624- gobject.ObjectConnect(x.GoPointer(), "signal::select-all", purego.NewCallback(fcb))
624+ return gobject.SignalConnect(x.GoPointer(), "select-all", purego.NewCallback(fcb))
625625 }
626626
627627 // Emitted when the set of selected rows changes.
628-func (x *ListBox) ConnectSelectedRowsChanged(cb func(ListBox)) {
628+func (x *ListBox) ConnectSelectedRowsChanged(cb func(ListBox)) uint32 {
629629 fcb := func(clsPtr uintptr) {
630630 fa := ListBox{}
631631 fa.Ptr = clsPtr
@@ -633,10 +633,10 @@ func (x *ListBox) ConnectSelectedRowsChanged(cb func(ListBox)) {
633633 cb(fa)
634634
635635 }
636- gobject.ObjectConnect(x.GoPointer(), "signal::selected-rows-changed", purego.NewCallback(fcb))
636+ return gobject.SignalConnect(x.GoPointer(), "selected-rows-changed", purego.NewCallback(fcb))
637637 }
638638
639-func (x *ListBox) ConnectToggleCursorRow(cb func(ListBox)) {
639+func (x *ListBox) ConnectToggleCursorRow(cb func(ListBox)) uint32 {
640640 fcb := func(clsPtr uintptr) {
641641 fa := ListBox{}
642642 fa.Ptr = clsPtr
@@ -644,7 +644,7 @@ func (x *ListBox) ConnectToggleCursorRow(cb func(ListBox)) {
644644 cb(fa)
645645
646646 }
647- gobject.ObjectConnect(x.GoPointer(), "signal::toggle-cursor-row", purego.NewCallback(fcb))
647+ return gobject.SignalConnect(x.GoPointer(), "toggle-cursor-row", purego.NewCallback(fcb))
648648 }
649649
650650 // Emitted to unselect all children of the box, if the selection
@@ -654,7 +654,7 @@ func (x *ListBox) ConnectToggleCursorRow(cb func(ListBox)) {
654654 //
655655 // The default binding for this signal is
656656 // <kbd>Ctrl</kbd>-<kbd>Shift</kbd>-<kbd>a</kbd>.
657-func (x *ListBox) ConnectUnselectAll(cb func(ListBox)) {
657+func (x *ListBox) ConnectUnselectAll(cb func(ListBox)) uint32 {
658658 fcb := func(clsPtr uintptr) {
659659 fa := ListBox{}
660660 fa.Ptr = clsPtr
@@ -662,7 +662,7 @@ func (x *ListBox) ConnectUnselectAll(cb func(ListBox)) {
662662 cb(fa)
663663
664664 }
665- gobject.ObjectConnect(x.GoPointer(), "signal::unselect-all", purego.NewCallback(fcb))
665+ return gobject.SignalConnect(x.GoPointer(), "unselect-all", purego.NewCallback(fcb))
666666 }
667667
668668 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
@@ -992,7 +992,7 @@ func (c *ListBoxRow) SetGoPointer(ptr uintptr) {
992992 // If you want to be notified when the user activates a row (by key or not),
993993 // use the [signal@Gtk.ListBox::row-activated] signal on the row’s parent
994994 // `GtkListBox`.
995-func (x *ListBoxRow) ConnectActivate(cb func(ListBoxRow)) {
995+func (x *ListBoxRow) ConnectActivate(cb func(ListBoxRow)) uint32 {
996996 fcb := func(clsPtr uintptr) {
997997 fa := ListBoxRow{}
998998 fa.Ptr = clsPtr
@@ -1000,7 +1000,7 @@ func (x *ListBoxRow) ConnectActivate(cb func(ListBoxRow)) {
10001000 cb(fa)
10011001
10021002 }
1003- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
1003+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
10041004 }
10051005
10061006 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtklistview.go +2 -2
@@ -277,7 +277,7 @@ func (c *ListView) SetGoPointer(ptr uintptr) {
277277 // This allows for a convenient way to handle activation in a listview.
278278 // See [method@Gtk.ListItem.set_activatable] for details on how to use
279279 // this signal.
280-func (x *ListView) ConnectActivate(cb func(ListView, uint)) {
280+func (x *ListView) ConnectActivate(cb func(ListView, uint)) uint32 {
281281 fcb := func(clsPtr uintptr, PositionVarp uint) {
282282 fa := ListView{}
283283 fa.Ptr = clsPtr
@@ -285,7 +285,7 @@ func (x *ListView) ConnectActivate(cb func(ListView, uint)) {
285285 cb(fa, PositionVarp)
286286
287287 }
288- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
288+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
289289 }
290290
291291 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkmenubutton.go +2 -2
@@ -416,7 +416,7 @@ func (c *MenuButton) SetGoPointer(ptr uintptr) {
416416 //
417417 // The `::activate` signal on `GtkMenuButton` is an action signal and
418418 // emitting it causes the button to pop up its menu.
419-func (x *MenuButton) ConnectActivate(cb func(MenuButton)) {
419+func (x *MenuButton) ConnectActivate(cb func(MenuButton)) uint32 {
420420 fcb := func(clsPtr uintptr) {
421421 fa := MenuButton{}
422422 fa.Ptr = clsPtr
@@ -424,7 +424,7 @@ func (x *MenuButton) ConnectActivate(cb func(MenuButton)) {
424424 cb(fa)
425425
426426 }
427- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
427+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
428428 }
429429
430430 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtknativedialog.go +2 -2
@@ -185,7 +185,7 @@ func (c *NativeDialog) SetGoPointer(ptr uintptr) {
185185 //
186186 // If you call [method@Gtk.NativeDialog.hide] before the user
187187 // responds to the dialog this signal will not be emitted.
188-func (x *NativeDialog) ConnectResponse(cb func(NativeDialog, int)) {
188+func (x *NativeDialog) ConnectResponse(cb func(NativeDialog, int)) uint32 {
189189 fcb := func(clsPtr uintptr, ResponseIdVarp int) {
190190 fa := NativeDialog{}
191191 fa.Ptr = clsPtr
@@ -193,7 +193,7 @@ func (x *NativeDialog) ConnectResponse(cb func(NativeDialog, int)) {
193193 cb(fa, ResponseIdVarp)
194194
195195 }
196- gobject.ObjectConnect(x.GoPointer(), "signal::response", purego.NewCallback(fcb))
196+ return gobject.SignalConnect(x.GoPointer(), "response", purego.NewCallback(fcb))
197197 }
198198
199199 func init() {
M v4/gtk/gtknotebook.go +20 -20
@@ -692,7 +692,7 @@ func (c *Notebook) SetGoPointer(ptr uintptr) {
692692 c.Ptr = ptr
693693 }
694694
695-func (x *Notebook) ConnectChangeCurrentPage(cb func(Notebook, int) bool) {
695+func (x *Notebook) ConnectChangeCurrentPage(cb func(Notebook, int) bool) uint32 {
696696 fcb := func(clsPtr uintptr, ObjectVarp int) bool {
697697 fa := Notebook{}
698698 fa.Ptr = clsPtr
@@ -700,7 +700,7 @@ func (x *Notebook) ConnectChangeCurrentPage(cb func(Notebook, int) bool) {
700700 return cb(fa, ObjectVarp)
701701
702702 }
703- gobject.ObjectConnect(x.GoPointer(), "signal::change-current-page", purego.NewCallback(fcb))
703+ return gobject.SignalConnect(x.GoPointer(), "change-current-page", purego.NewCallback(fcb))
704704 }
705705
706706 // The ::create-window signal is emitted when a detachable
@@ -711,7 +711,7 @@ func (x *Notebook) ConnectChangeCurrentPage(cb func(Notebook, int) bool) {
711711 // responsible for moving/resizing the window and adding the
712712 // necessary properties to the notebook (e.g. the
713713 // `GtkNotebook`:group-name ).
714-func (x *Notebook) ConnectCreateWindow(cb func(Notebook, uintptr) Notebook) {
714+func (x *Notebook) ConnectCreateWindow(cb func(Notebook, uintptr) Notebook) uint32 {
715715 fcb := func(clsPtr uintptr, PageVarp uintptr) uintptr {
716716 fa := Notebook{}
717717 fa.Ptr = clsPtr
@@ -720,10 +720,10 @@ func (x *Notebook) ConnectCreateWindow(cb func(Notebook, uintptr) Notebook) {
720720 return CreateWindowCls.Ptr
721721
722722 }
723- gobject.ObjectConnect(x.GoPointer(), "signal::create-window", purego.NewCallback(fcb))
723+ return gobject.SignalConnect(x.GoPointer(), "create-window", purego.NewCallback(fcb))
724724 }
725725
726-func (x *Notebook) ConnectFocusTab(cb func(Notebook, NotebookTab) bool) {
726+func (x *Notebook) ConnectFocusTab(cb func(Notebook, NotebookTab) bool) uint32 {
727727 fcb := func(clsPtr uintptr, ObjectVarp NotebookTab) bool {
728728 fa := Notebook{}
729729 fa.Ptr = clsPtr
@@ -731,10 +731,10 @@ func (x *Notebook) ConnectFocusTab(cb func(Notebook, NotebookTab) bool) {
731731 return cb(fa, ObjectVarp)
732732
733733 }
734- gobject.ObjectConnect(x.GoPointer(), "signal::focus-tab", purego.NewCallback(fcb))
734+ return gobject.SignalConnect(x.GoPointer(), "focus-tab", purego.NewCallback(fcb))
735735 }
736736
737-func (x *Notebook) ConnectMoveFocusOut(cb func(Notebook, DirectionType)) {
737+func (x *Notebook) ConnectMoveFocusOut(cb func(Notebook, DirectionType)) uint32 {
738738 fcb := func(clsPtr uintptr, ObjectVarp DirectionType) {
739739 fa := Notebook{}
740740 fa.Ptr = clsPtr
@@ -742,12 +742,12 @@ func (x *Notebook) ConnectMoveFocusOut(cb func(Notebook, DirectionType)) {
742742 cb(fa, ObjectVarp)
743743
744744 }
745- gobject.ObjectConnect(x.GoPointer(), "signal::move-focus-out", purego.NewCallback(fcb))
745+ return gobject.SignalConnect(x.GoPointer(), "move-focus-out", purego.NewCallback(fcb))
746746 }
747747
748748 // the ::page-added signal is emitted in the notebook
749749 // right after a page is added to the notebook.
750-func (x *Notebook) ConnectPageAdded(cb func(Notebook, uintptr, uint)) {
750+func (x *Notebook) ConnectPageAdded(cb func(Notebook, uintptr, uint)) uint32 {
751751 fcb := func(clsPtr uintptr, ChildVarp uintptr, PageNumVarp uint) {
752752 fa := Notebook{}
753753 fa.Ptr = clsPtr
@@ -755,12 +755,12 @@ func (x *Notebook) ConnectPageAdded(cb func(Notebook, uintptr, uint)) {
755755 cb(fa, ChildVarp, PageNumVarp)
756756
757757 }
758- gobject.ObjectConnect(x.GoPointer(), "signal::page-added", purego.NewCallback(fcb))
758+ return gobject.SignalConnect(x.GoPointer(), "page-added", purego.NewCallback(fcb))
759759 }
760760
761761 // the ::page-removed signal is emitted in the notebook
762762 // right after a page is removed from the notebook.
763-func (x *Notebook) ConnectPageRemoved(cb func(Notebook, uintptr, uint)) {
763+func (x *Notebook) ConnectPageRemoved(cb func(Notebook, uintptr, uint)) uint32 {
764764 fcb := func(clsPtr uintptr, ChildVarp uintptr, PageNumVarp uint) {
765765 fa := Notebook{}
766766 fa.Ptr = clsPtr
@@ -768,12 +768,12 @@ func (x *Notebook) ConnectPageRemoved(cb func(Notebook, uintptr, uint)) {
768768 cb(fa, ChildVarp, PageNumVarp)
769769
770770 }
771- gobject.ObjectConnect(x.GoPointer(), "signal::page-removed", purego.NewCallback(fcb))
771+ return gobject.SignalConnect(x.GoPointer(), "page-removed", purego.NewCallback(fcb))
772772 }
773773
774774 // the ::page-reordered signal is emitted in the notebook
775775 // right after a page has been reordered.
776-func (x *Notebook) ConnectPageReordered(cb func(Notebook, uintptr, uint)) {
776+func (x *Notebook) ConnectPageReordered(cb func(Notebook, uintptr, uint)) uint32 {
777777 fcb := func(clsPtr uintptr, ChildVarp uintptr, PageNumVarp uint) {
778778 fa := Notebook{}
779779 fa.Ptr = clsPtr
@@ -781,10 +781,10 @@ func (x *Notebook) ConnectPageReordered(cb func(Notebook, uintptr, uint)) {
781781 cb(fa, ChildVarp, PageNumVarp)
782782
783783 }
784- gobject.ObjectConnect(x.GoPointer(), "signal::page-reordered", purego.NewCallback(fcb))
784+ return gobject.SignalConnect(x.GoPointer(), "page-reordered", purego.NewCallback(fcb))
785785 }
786786
787-func (x *Notebook) ConnectReorderTab(cb func(Notebook, DirectionType, bool) bool) {
787+func (x *Notebook) ConnectReorderTab(cb func(Notebook, DirectionType, bool) bool) uint32 {
788788 fcb := func(clsPtr uintptr, ObjectVarp DirectionType, P0Varp bool) bool {
789789 fa := Notebook{}
790790 fa.Ptr = clsPtr
@@ -792,10 +792,10 @@ func (x *Notebook) ConnectReorderTab(cb func(Notebook, DirectionType, bool) bool
792792 return cb(fa, ObjectVarp, P0Varp)
793793
794794 }
795- gobject.ObjectConnect(x.GoPointer(), "signal::reorder-tab", purego.NewCallback(fcb))
795+ return gobject.SignalConnect(x.GoPointer(), "reorder-tab", purego.NewCallback(fcb))
796796 }
797797
798-func (x *Notebook) ConnectSelectPage(cb func(Notebook, bool) bool) {
798+func (x *Notebook) ConnectSelectPage(cb func(Notebook, bool) bool) uint32 {
799799 fcb := func(clsPtr uintptr, ObjectVarp bool) bool {
800800 fa := Notebook{}
801801 fa.Ptr = clsPtr
@@ -803,11 +803,11 @@ func (x *Notebook) ConnectSelectPage(cb func(Notebook, bool) bool) {
803803 return cb(fa, ObjectVarp)
804804
805805 }
806- gobject.ObjectConnect(x.GoPointer(), "signal::select-page", purego.NewCallback(fcb))
806+ return gobject.SignalConnect(x.GoPointer(), "select-page", purego.NewCallback(fcb))
807807 }
808808
809809 // Emitted when the user or a function changes the current page.
810-func (x *Notebook) ConnectSwitchPage(cb func(Notebook, uintptr, uint)) {
810+func (x *Notebook) ConnectSwitchPage(cb func(Notebook, uintptr, uint)) uint32 {
811811 fcb := func(clsPtr uintptr, PageVarp uintptr, PageNumVarp uint) {
812812 fa := Notebook{}
813813 fa.Ptr = clsPtr
@@ -815,7 +815,7 @@ func (x *Notebook) ConnectSwitchPage(cb func(Notebook, uintptr, uint)) {
815815 cb(fa, PageVarp, PageNumVarp)
816816
817817 }
818- gobject.ObjectConnect(x.GoPointer(), "signal::switch-page", purego.NewCallback(fcb))
818+ return gobject.SignalConnect(x.GoPointer(), "switch-page", purego.NewCallback(fcb))
819819 }
820820
821821 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkoverlay.go +2 -2
@@ -180,7 +180,7 @@ func (c *Overlay) SetGoPointer(ptr uintptr) {
180180 // be full-width/height). If the main child is a
181181 // `GtkScrolledWindow`, the overlays are placed relative
182182 // to its contents.
183-func (x *Overlay) ConnectGetChildPosition(cb func(Overlay, uintptr, uintptr) bool) {
183+func (x *Overlay) ConnectGetChildPosition(cb func(Overlay, uintptr, uintptr) bool) uint32 {
184184 fcb := func(clsPtr uintptr, WidgetVarp uintptr, AllocationVarp uintptr) bool {
185185 fa := Overlay{}
186186 fa.Ptr = clsPtr
@@ -188,7 +188,7 @@ func (x *Overlay) ConnectGetChildPosition(cb func(Overlay, uintptr, uintptr) boo
188188 return cb(fa, WidgetVarp, AllocationVarp)
189189
190190 }
191- gobject.ObjectConnect(x.GoPointer(), "signal::get-child-position", purego.NewCallback(fcb))
191+ return gobject.SignalConnect(x.GoPointer(), "get-child-position", purego.NewCallback(fcb))
192192 }
193193
194194 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkpaned.go +12 -12
@@ -280,7 +280,7 @@ func (c *Paned) SetGoPointer(ptr uintptr) {
280280 //
281281 // The default binding for this signal is <kbd>Return</kbd> or
282282 // <kbd>Space</kbd>.
283-func (x *Paned) ConnectAcceptPosition(cb func(Paned) bool) {
283+func (x *Paned) ConnectAcceptPosition(cb func(Paned) bool) uint32 {
284284 fcb := func(clsPtr uintptr) bool {
285285 fa := Paned{}
286286 fa.Ptr = clsPtr
@@ -288,7 +288,7 @@ func (x *Paned) ConnectAcceptPosition(cb func(Paned) bool) {
288288 return cb(fa)
289289
290290 }
291- gobject.ObjectConnect(x.GoPointer(), "signal::accept-position", purego.NewCallback(fcb))
291+ return gobject.SignalConnect(x.GoPointer(), "accept-position", purego.NewCallback(fcb))
292292 }
293293
294294 // Emitted to cancel moving the position of the handle using key
@@ -300,7 +300,7 @@ func (x *Paned) ConnectAcceptPosition(cb func(Paned) bool) {
300300 // This is a [keybinding signal](class.SignalAction.html).
301301 //
302302 // The default binding for this signal is <kbd>Escape</kbd>.
303-func (x *Paned) ConnectCancelPosition(cb func(Paned) bool) {
303+func (x *Paned) ConnectCancelPosition(cb func(Paned) bool) uint32 {
304304 fcb := func(clsPtr uintptr) bool {
305305 fa := Paned{}
306306 fa.Ptr = clsPtr
@@ -308,7 +308,7 @@ func (x *Paned) ConnectCancelPosition(cb func(Paned) bool) {
308308 return cb(fa)
309309
310310 }
311- gobject.ObjectConnect(x.GoPointer(), "signal::cancel-position", purego.NewCallback(fcb))
311+ return gobject.SignalConnect(x.GoPointer(), "cancel-position", purego.NewCallback(fcb))
312312 }
313313
314314 // Emitted to cycle the focus between the children of the paned.
@@ -316,7 +316,7 @@ func (x *Paned) ConnectCancelPosition(cb func(Paned) bool) {
316316 // This is a [keybinding signal](class.SignalAction.html).
317317 //
318318 // The default binding is <kbd>F6</kbd>.
319-func (x *Paned) ConnectCycleChildFocus(cb func(Paned, bool) bool) {
319+func (x *Paned) ConnectCycleChildFocus(cb func(Paned, bool) bool) uint32 {
320320 fcb := func(clsPtr uintptr, ReversedVarp bool) bool {
321321 fa := Paned{}
322322 fa.Ptr = clsPtr
@@ -324,7 +324,7 @@ func (x *Paned) ConnectCycleChildFocus(cb func(Paned, bool) bool) {
324324 return cb(fa, ReversedVarp)
325325
326326 }
327- gobject.ObjectConnect(x.GoPointer(), "signal::cycle-child-focus", purego.NewCallback(fcb))
327+ return gobject.SignalConnect(x.GoPointer(), "cycle-child-focus", purego.NewCallback(fcb))
328328 }
329329
330330 // Emitted to cycle whether the paned should grab focus to allow
@@ -333,7 +333,7 @@ func (x *Paned) ConnectCycleChildFocus(cb func(Paned, bool) bool) {
333333 // This is a [keybinding signal](class.SignalAction.html).
334334 //
335335 // The default binding for this signal is <kbd>F8</kbd>.
336-func (x *Paned) ConnectCycleHandleFocus(cb func(Paned, bool) bool) {
336+func (x *Paned) ConnectCycleHandleFocus(cb func(Paned, bool) bool) uint32 {
337337 fcb := func(clsPtr uintptr, ReversedVarp bool) bool {
338338 fa := Paned{}
339339 fa.Ptr = clsPtr
@@ -341,13 +341,13 @@ func (x *Paned) ConnectCycleHandleFocus(cb func(Paned, bool) bool) {
341341 return cb(fa, ReversedVarp)
342342
343343 }
344- gobject.ObjectConnect(x.GoPointer(), "signal::cycle-handle-focus", purego.NewCallback(fcb))
344+ return gobject.SignalConnect(x.GoPointer(), "cycle-handle-focus", purego.NewCallback(fcb))
345345 }
346346
347347 // Emitted to move the handle with key bindings.
348348 //
349349 // This is a [keybinding signal](class.SignalAction.html).
350-func (x *Paned) ConnectMoveHandle(cb func(Paned, ScrollType) bool) {
350+func (x *Paned) ConnectMoveHandle(cb func(Paned, ScrollType) bool) uint32 {
351351 fcb := func(clsPtr uintptr, ScrollTypeVarp ScrollType) bool {
352352 fa := Paned{}
353353 fa.Ptr = clsPtr
@@ -355,7 +355,7 @@ func (x *Paned) ConnectMoveHandle(cb func(Paned, ScrollType) bool) {
355355 return cb(fa, ScrollTypeVarp)
356356
357357 }
358- gobject.ObjectConnect(x.GoPointer(), "signal::move-handle", purego.NewCallback(fcb))
358+ return gobject.SignalConnect(x.GoPointer(), "move-handle", purego.NewCallback(fcb))
359359 }
360360
361361 // Emitted to accept the current position of the handle and then
@@ -364,7 +364,7 @@ func (x *Paned) ConnectMoveHandle(cb func(Paned, ScrollType) bool) {
364364 // This is a [keybinding signal](class.SignalAction.html).
365365 //
366366 // The default binding is <kbd>Tab</kbd>.
367-func (x *Paned) ConnectToggleHandleFocus(cb func(Paned) bool) {
367+func (x *Paned) ConnectToggleHandleFocus(cb func(Paned) bool) uint32 {
368368 fcb := func(clsPtr uintptr) bool {
369369 fa := Paned{}
370370 fa.Ptr = clsPtr
@@ -372,7 +372,7 @@ func (x *Paned) ConnectToggleHandleFocus(cb func(Paned) bool) {
372372 return cb(fa)
373373
374374 }
375- gobject.ObjectConnect(x.GoPointer(), "signal::toggle-handle-focus", purego.NewCallback(fcb))
375+ return gobject.SignalConnect(x.GoPointer(), "toggle-handle-focus", purego.NewCallback(fcb))
376376 }
377377
378378 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkpasswordentry.go +2 -2
@@ -132,7 +132,7 @@ func (c *PasswordEntry) SetGoPointer(ptr uintptr) {
132132 // Emitted when the entry is activated.
133133 //
134134 // The keybindings for this signal are all forms of the Enter key.
135-func (x *PasswordEntry) ConnectActivate(cb func(PasswordEntry)) {
135+func (x *PasswordEntry) ConnectActivate(cb func(PasswordEntry)) uint32 {
136136 fcb := func(clsPtr uintptr) {
137137 fa := PasswordEntry{}
138138 fa.Ptr = clsPtr
@@ -140,7 +140,7 @@ func (x *PasswordEntry) ConnectActivate(cb func(PasswordEntry)) {
140140 cb(fa)
141141
142142 }
143- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
143+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
144144 }
145145
146146 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkpopover.go +4 -4
@@ -362,7 +362,7 @@ func (c *Popover) SetGoPointer(ptr uintptr) {
362362 // Emitted whend the user activates the default widget.
363363 //
364364 // This is a [keybinding signal](class.SignalAction.html).
365-func (x *Popover) ConnectActivateDefault(cb func(Popover)) {
365+func (x *Popover) ConnectActivateDefault(cb func(Popover)) uint32 {
366366 fcb := func(clsPtr uintptr) {
367367 fa := Popover{}
368368 fa.Ptr = clsPtr
@@ -370,11 +370,11 @@ func (x *Popover) ConnectActivateDefault(cb func(Popover)) {
370370 cb(fa)
371371
372372 }
373- gobject.ObjectConnect(x.GoPointer(), "signal::activate-default", purego.NewCallback(fcb))
373+ return gobject.SignalConnect(x.GoPointer(), "activate-default", purego.NewCallback(fcb))
374374 }
375375
376376 // Emitted when the popover is closed.
377-func (x *Popover) ConnectClosed(cb func(Popover)) {
377+func (x *Popover) ConnectClosed(cb func(Popover)) uint32 {
378378 fcb := func(clsPtr uintptr) {
379379 fa := Popover{}
380380 fa.Ptr = clsPtr
@@ -382,7 +382,7 @@ func (x *Popover) ConnectClosed(cb func(Popover)) {
382382 cb(fa)
383383
384384 }
385- gobject.ObjectConnect(x.GoPointer(), "signal::closed", purego.NewCallback(fcb))
385+ return gobject.SignalConnect(x.GoPointer(), "closed", purego.NewCallback(fcb))
386386 }
387387
388388 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkprinter.go +2 -2
@@ -355,7 +355,7 @@ func (c *Printer) SetGoPointer(ptr uintptr) {
355355 //
356356 // The @success parameter indicates if the information was
357357 // actually obtained.
358-func (x *Printer) ConnectDetailsAcquired(cb func(Printer, bool)) {
358+func (x *Printer) ConnectDetailsAcquired(cb func(Printer, bool)) uint32 {
359359 fcb := func(clsPtr uintptr, SuccessVarp bool) {
360360 fa := Printer{}
361361 fa.Ptr = clsPtr
@@ -363,7 +363,7 @@ func (x *Printer) ConnectDetailsAcquired(cb func(Printer, bool)) {
363363 cb(fa, SuccessVarp)
364364
365365 }
366- gobject.ObjectConnect(x.GoPointer(), "signal::details-acquired", purego.NewCallback(fcb))
366+ return gobject.SignalConnect(x.GoPointer(), "details-acquired", purego.NewCallback(fcb))
367367 }
368368
369369 func init() {
M v4/gtk/gtkprintjob.go +2 -2
@@ -391,7 +391,7 @@ func (c *PrintJob) SetGoPointer(ptr uintptr) {
391391 //
392392 // The signal handler can use [method@Gtk.PrintJob.get_status]
393393 // to obtain the new status.
394-func (x *PrintJob) ConnectStatusChanged(cb func(PrintJob)) {
394+func (x *PrintJob) ConnectStatusChanged(cb func(PrintJob)) uint32 {
395395 fcb := func(clsPtr uintptr) {
396396 fa := PrintJob{}
397397 fa.Ptr = clsPtr
@@ -399,7 +399,7 @@ func (x *PrintJob) ConnectStatusChanged(cb func(PrintJob)) {
399399 cb(fa)
400400
401401 }
402- gobject.ObjectConnect(x.GoPointer(), "signal::status-changed", purego.NewCallback(fcb))
402+ return gobject.SignalConnect(x.GoPointer(), "status-changed", purego.NewCallback(fcb))
403403 }
404404
405405 func init() {
M v4/gtk/gtkprintoperation.go +22 -22
@@ -729,7 +729,7 @@ func (c *PrintOperation) SetGoPointer(ptr uintptr) {
729729 // [class@Gtk.PrintContext] and paginate the document accordingly,
730730 // and then set the number of pages with
731731 // [method@Gtk.PrintOperation.set_n_pages].
732-func (x *PrintOperation) ConnectBeginPrint(cb func(PrintOperation, uintptr)) {
732+func (x *PrintOperation) ConnectBeginPrint(cb func(PrintOperation, uintptr)) uint32 {
733733 fcb := func(clsPtr uintptr, ContextVarp uintptr) {
734734 fa := PrintOperation{}
735735 fa.Ptr = clsPtr
@@ -737,7 +737,7 @@ func (x *PrintOperation) ConnectBeginPrint(cb func(PrintOperation, uintptr)) {
737737 cb(fa, ContextVarp)
738738
739739 }
740- gobject.ObjectConnect(x.GoPointer(), "signal::begin-print", purego.NewCallback(fcb))
740+ return gobject.SignalConnect(x.GoPointer(), "begin-print", purego.NewCallback(fcb))
741741 }
742742
743743 // Emitted when displaying the print dialog.
@@ -751,7 +751,7 @@ func (x *PrintOperation) ConnectBeginPrint(cb func(PrintOperation, uintptr)) {
751751 // to stay around until the [signal@Gtk.PrintOperation::custom-widget-apply]
752752 // signal is emitted on the operation. Then you can read out any
753753 // information you need from the widgets.
754-func (x *PrintOperation) ConnectCreateCustomWidget(cb func(PrintOperation) gobject.Object) {
754+func (x *PrintOperation) ConnectCreateCustomWidget(cb func(PrintOperation) gobject.Object) uint32 {
755755 fcb := func(clsPtr uintptr) uintptr {
756756 fa := PrintOperation{}
757757 fa.Ptr = clsPtr
@@ -760,7 +760,7 @@ func (x *PrintOperation) ConnectCreateCustomWidget(cb func(PrintOperation) gobje
760760 return CreateCustomWidgetCls.Ptr
761761
762762 }
763- gobject.ObjectConnect(x.GoPointer(), "signal::create-custom-widget", purego.NewCallback(fcb))
763+ return gobject.SignalConnect(x.GoPointer(), "create-custom-widget", purego.NewCallback(fcb))
764764 }
765765
766766 // Emitted right before ::begin-print if you added
@@ -769,7 +769,7 @@ func (x *PrintOperation) ConnectCreateCustomWidget(cb func(PrintOperation) gobje
769769 // When you get this signal you should read the information from the
770770 // custom widgets, as the widgets are not guaranteed to be around at a
771771 // later time.
772-func (x *PrintOperation) ConnectCustomWidgetApply(cb func(PrintOperation, uintptr)) {
772+func (x *PrintOperation) ConnectCustomWidgetApply(cb func(PrintOperation, uintptr)) uint32 {
773773 fcb := func(clsPtr uintptr, WidgetVarp uintptr) {
774774 fa := PrintOperation{}
775775 fa.Ptr = clsPtr
@@ -777,7 +777,7 @@ func (x *PrintOperation) ConnectCustomWidgetApply(cb func(PrintOperation, uintpt
777777 cb(fa, WidgetVarp)
778778
779779 }
780- gobject.ObjectConnect(x.GoPointer(), "signal::custom-widget-apply", purego.NewCallback(fcb))
780+ return gobject.SignalConnect(x.GoPointer(), "custom-widget-apply", purego.NewCallback(fcb))
781781 }
782782
783783 // Emitted when the print operation run has finished doing
@@ -790,7 +790,7 @@ func (x *PrintOperation) ConnectCustomWidgetApply(cb func(PrintOperation, uintpt
790790 // If you enabled print status tracking then
791791 // [method@Gtk.PrintOperation.is_finished] may still return %FALSE
792792 // after the ::done signal was emitted.
793-func (x *PrintOperation) ConnectDone(cb func(PrintOperation, PrintOperationResult)) {
793+func (x *PrintOperation) ConnectDone(cb func(PrintOperation, PrintOperationResult)) uint32 {
794794 fcb := func(clsPtr uintptr, ResultVarp PrintOperationResult) {
795795 fa := PrintOperation{}
796796 fa.Ptr = clsPtr
@@ -798,7 +798,7 @@ func (x *PrintOperation) ConnectDone(cb func(PrintOperation, PrintOperationResul
798798 cb(fa, ResultVarp)
799799
800800 }
801- gobject.ObjectConnect(x.GoPointer(), "signal::done", purego.NewCallback(fcb))
801+ return gobject.SignalConnect(x.GoPointer(), "done", purego.NewCallback(fcb))
802802 }
803803
804804 // Emitted for every page that is printed.
@@ -855,7 +855,7 @@ func (x *PrintOperation) ConnectDone(cb func(PrintOperation, PrintOperationResul
855855 // [method@Gtk.PrintOperation.set_unit] before starting the print
856856 // operation to set up the transformation of the cairo context
857857 // according to your needs.
858-func (x *PrintOperation) ConnectDrawPage(cb func(PrintOperation, uintptr, int)) {
858+func (x *PrintOperation) ConnectDrawPage(cb func(PrintOperation, uintptr, int)) uint32 {
859859 fcb := func(clsPtr uintptr, ContextVarp uintptr, PageNrVarp int) {
860860 fa := PrintOperation{}
861861 fa.Ptr = clsPtr
@@ -863,14 +863,14 @@ func (x *PrintOperation) ConnectDrawPage(cb func(PrintOperation, uintptr, int))
863863 cb(fa, ContextVarp, PageNrVarp)
864864
865865 }
866- gobject.ObjectConnect(x.GoPointer(), "signal::draw-page", purego.NewCallback(fcb))
866+ return gobject.SignalConnect(x.GoPointer(), "draw-page", purego.NewCallback(fcb))
867867 }
868868
869869 // Emitted after all pages have been rendered.
870870 //
871871 // A handler for this signal can clean up any resources that have
872872 // been allocated in the [signal@Gtk.PrintOperation::begin-print] handler.
873-func (x *PrintOperation) ConnectEndPrint(cb func(PrintOperation, uintptr)) {
873+func (x *PrintOperation) ConnectEndPrint(cb func(PrintOperation, uintptr)) uint32 {
874874 fcb := func(clsPtr uintptr, ContextVarp uintptr) {
875875 fa := PrintOperation{}
876876 fa.Ptr = clsPtr
@@ -878,7 +878,7 @@ func (x *PrintOperation) ConnectEndPrint(cb func(PrintOperation, uintptr)) {
878878 cb(fa, ContextVarp)
879879
880880 }
881- gobject.ObjectConnect(x.GoPointer(), "signal::end-print", purego.NewCallback(fcb))
881+ return gobject.SignalConnect(x.GoPointer(), "end-print", purego.NewCallback(fcb))
882882 }
883883
884884 // Emitted after the ::begin-print signal, but before the actual rendering
@@ -895,7 +895,7 @@ func (x *PrintOperation) ConnectEndPrint(cb func(PrintOperation, uintptr)) {
895895 // If you don't need to do pagination in chunks, you can simply do
896896 // it all in the ::begin-print handler, and set the number of pages
897897 // from there.
898-func (x *PrintOperation) ConnectPaginate(cb func(PrintOperation, uintptr) bool) {
898+func (x *PrintOperation) ConnectPaginate(cb func(PrintOperation, uintptr) bool) uint32 {
899899 fcb := func(clsPtr uintptr, ContextVarp uintptr) bool {
900900 fa := PrintOperation{}
901901 fa.Ptr = clsPtr
@@ -903,7 +903,7 @@ func (x *PrintOperation) ConnectPaginate(cb func(PrintOperation, uintptr) bool)
903903 return cb(fa, ContextVarp)
904904
905905 }
906- gobject.ObjectConnect(x.GoPointer(), "signal::paginate", purego.NewCallback(fcb))
906+ return gobject.SignalConnect(x.GoPointer(), "paginate", purego.NewCallback(fcb))
907907 }
908908
909909 // Gets emitted when a preview is requested from the native dialog.
@@ -923,7 +923,7 @@ func (x *PrintOperation) ConnectPaginate(cb func(PrintOperation, uintptr) bool)
923923 // are selected for print and render them. The preview must be
924924 // finished by calling [method@Gtk.PrintOperationPreview.end_preview]
925925 // (typically in response to the user clicking a close button).
926-func (x *PrintOperation) ConnectPreview(cb func(PrintOperation, uintptr, uintptr, uintptr) bool) {
926+func (x *PrintOperation) ConnectPreview(cb func(PrintOperation, uintptr, uintptr, uintptr) bool) uint32 {
927927 fcb := func(clsPtr uintptr, PreviewVarp uintptr, ContextVarp uintptr, ParentVarp uintptr) bool {
928928 fa := PrintOperation{}
929929 fa.Ptr = clsPtr
@@ -931,7 +931,7 @@ func (x *PrintOperation) ConnectPreview(cb func(PrintOperation, uintptr, uintptr
931931 return cb(fa, PreviewVarp, ContextVarp, ParentVarp)
932932
933933 }
934- gobject.ObjectConnect(x.GoPointer(), "signal::preview", purego.NewCallback(fcb))
934+ return gobject.SignalConnect(x.GoPointer(), "preview", purego.NewCallback(fcb))
935935 }
936936
937937 // Emitted once for every page that is printed.
@@ -939,7 +939,7 @@ func (x *PrintOperation) ConnectPreview(cb func(PrintOperation, uintptr, uintptr
939939 // This gives the application a chance to modify the page setup.
940940 // Any changes done to @setup will be in force only for printing
941941 // this page.
942-func (x *PrintOperation) ConnectRequestPageSetup(cb func(PrintOperation, uintptr, int, uintptr)) {
942+func (x *PrintOperation) ConnectRequestPageSetup(cb func(PrintOperation, uintptr, int, uintptr)) uint32 {
943943 fcb := func(clsPtr uintptr, ContextVarp uintptr, PageNrVarp int, SetupVarp uintptr) {
944944 fa := PrintOperation{}
945945 fa.Ptr = clsPtr
@@ -947,7 +947,7 @@ func (x *PrintOperation) ConnectRequestPageSetup(cb func(PrintOperation, uintptr
947947 cb(fa, ContextVarp, PageNrVarp, SetupVarp)
948948
949949 }
950- gobject.ObjectConnect(x.GoPointer(), "signal::request-page-setup", purego.NewCallback(fcb))
950+ return gobject.SignalConnect(x.GoPointer(), "request-page-setup", purego.NewCallback(fcb))
951951 }
952952
953953 // Emitted at between the various phases of the print operation.
@@ -955,7 +955,7 @@ func (x *PrintOperation) ConnectRequestPageSetup(cb func(PrintOperation, uintptr
955955 // See [enum@Gtk.PrintStatus] for the phases that are being discriminated.
956956 // Use [method@Gtk.PrintOperation.get_status] to find out the current
957957 // status.
958-func (x *PrintOperation) ConnectStatusChanged(cb func(PrintOperation)) {
958+func (x *PrintOperation) ConnectStatusChanged(cb func(PrintOperation)) uint32 {
959959 fcb := func(clsPtr uintptr) {
960960 fa := PrintOperation{}
961961 fa.Ptr = clsPtr
@@ -963,14 +963,14 @@ func (x *PrintOperation) ConnectStatusChanged(cb func(PrintOperation)) {
963963 cb(fa)
964964
965965 }
966- gobject.ObjectConnect(x.GoPointer(), "signal::status-changed", purego.NewCallback(fcb))
966+ return gobject.SignalConnect(x.GoPointer(), "status-changed", purego.NewCallback(fcb))
967967 }
968968
969969 // Emitted after change of selected printer.
970970 //
971971 // The actual page setup and print settings are passed to the custom
972972 // widget, which can actualize itself according to this change.
973-func (x *PrintOperation) ConnectUpdateCustomWidget(cb func(PrintOperation, uintptr, uintptr, uintptr)) {
973+func (x *PrintOperation) ConnectUpdateCustomWidget(cb func(PrintOperation, uintptr, uintptr, uintptr)) uint32 {
974974 fcb := func(clsPtr uintptr, WidgetVarp uintptr, SetupVarp uintptr, SettingsVarp uintptr) {
975975 fa := PrintOperation{}
976976 fa.Ptr = clsPtr
@@ -978,7 +978,7 @@ func (x *PrintOperation) ConnectUpdateCustomWidget(cb func(PrintOperation, uintp
978978 cb(fa, WidgetVarp, SetupVarp, SettingsVarp)
979979
980980 }
981- gobject.ObjectConnect(x.GoPointer(), "signal::update-custom-widget", purego.NewCallback(fcb))
981+ return gobject.SignalConnect(x.GoPointer(), "update-custom-widget", purego.NewCallback(fcb))
982982 }
983983
984984 // Ends a preview.
M v4/gtk/gtkrange.go +8 -8
@@ -322,7 +322,7 @@ func (c *Range) SetGoPointer(ptr uintptr) {
322322
323323 // Emitted before clamping a value, to give the application a
324324 // chance to adjust the bounds.
325-func (x *Range) ConnectAdjustBounds(cb func(Range, float64)) {
325+func (x *Range) ConnectAdjustBounds(cb func(Range, float64)) uint32 {
326326 fcb := func(clsPtr uintptr, ValueVarp float64) {
327327 fa := Range{}
328328 fa.Ptr = clsPtr
@@ -330,7 +330,7 @@ func (x *Range) ConnectAdjustBounds(cb func(Range, float64)) {
330330 cb(fa, ValueVarp)
331331
332332 }
333- gobject.ObjectConnect(x.GoPointer(), "signal::adjust-bounds", purego.NewCallback(fcb))
333+ return gobject.SignalConnect(x.GoPointer(), "adjust-bounds", purego.NewCallback(fcb))
334334 }
335335
336336 // Emitted when a scroll action is performed on a range.
@@ -345,7 +345,7 @@ func (x *Range) ConnectAdjustBounds(cb func(Range, float64)) {
345345 // the ::change-value signal is responsible for clamping the value
346346 // to the desired number of decimal digits; the default GTK
347347 // handler clamps the value based on [property@Gtk.Range:round-digits].
348-func (x *Range) ConnectChangeValue(cb func(Range, ScrollType, float64) bool) {
348+func (x *Range) ConnectChangeValue(cb func(Range, ScrollType, float64) bool) uint32 {
349349 fcb := func(clsPtr uintptr, ScrollVarp ScrollType, ValueVarp float64) bool {
350350 fa := Range{}
351351 fa.Ptr = clsPtr
@@ -353,13 +353,13 @@ func (x *Range) ConnectChangeValue(cb func(Range, ScrollType, float64) bool) {
353353 return cb(fa, ScrollVarp, ValueVarp)
354354
355355 }
356- gobject.ObjectConnect(x.GoPointer(), "signal::change-value", purego.NewCallback(fcb))
356+ return gobject.SignalConnect(x.GoPointer(), "change-value", purego.NewCallback(fcb))
357357 }
358358
359359 // Virtual function that moves the slider.
360360 //
361361 // Used for keybindings.
362-func (x *Range) ConnectMoveSlider(cb func(Range, ScrollType)) {
362+func (x *Range) ConnectMoveSlider(cb func(Range, ScrollType)) uint32 {
363363 fcb := func(clsPtr uintptr, StepVarp ScrollType) {
364364 fa := Range{}
365365 fa.Ptr = clsPtr
@@ -367,11 +367,11 @@ func (x *Range) ConnectMoveSlider(cb func(Range, ScrollType)) {
367367 cb(fa, StepVarp)
368368
369369 }
370- gobject.ObjectConnect(x.GoPointer(), "signal::move-slider", purego.NewCallback(fcb))
370+ return gobject.SignalConnect(x.GoPointer(), "move-slider", purego.NewCallback(fcb))
371371 }
372372
373373 // Emitted when the range value changes.
374-func (x *Range) ConnectValueChanged(cb func(Range)) {
374+func (x *Range) ConnectValueChanged(cb func(Range)) uint32 {
375375 fcb := func(clsPtr uintptr) {
376376 fa := Range{}
377377 fa.Ptr = clsPtr
@@ -379,7 +379,7 @@ func (x *Range) ConnectValueChanged(cb func(Range)) {
379379 cb(fa)
380380
381381 }
382- gobject.ObjectConnect(x.GoPointer(), "signal::value-changed", purego.NewCallback(fcb))
382+ return gobject.SignalConnect(x.GoPointer(), "value-changed", purego.NewCallback(fcb))
383383 }
384384
385385 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkrecentmanager.go +2 -2
@@ -298,7 +298,7 @@ func (c *RecentManager) SetGoPointer(ptr uintptr) {
298298 //
299299 // This can happen either by calling [method@Gtk.RecentManager.add_item]
300300 // or by another application.
301-func (x *RecentManager) ConnectChanged(cb func(RecentManager)) {
301+func (x *RecentManager) ConnectChanged(cb func(RecentManager)) uint32 {
302302 fcb := func(clsPtr uintptr) {
303303 fa := RecentManager{}
304304 fa.Ptr = clsPtr
@@ -306,7 +306,7 @@ func (x *RecentManager) ConnectChanged(cb func(RecentManager)) {
306306 cb(fa)
307307
308308 }
309- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
309+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
310310 }
311311
312312 func init() {
M v4/gtk/gtkscalebutton.go +6 -6
@@ -181,7 +181,7 @@ func (c *ScaleButton) SetGoPointer(ptr uintptr) {
181181 // This is a [keybinding signal](class.SignalAction.html).
182182 //
183183 // The default binding for this signal is <kbd>Escape</kbd>.
184-func (x *ScaleButton) ConnectPopdown(cb func(ScaleButton)) {
184+func (x *ScaleButton) ConnectPopdown(cb func(ScaleButton)) uint32 {
185185 fcb := func(clsPtr uintptr) {
186186 fa := ScaleButton{}
187187 fa.Ptr = clsPtr
@@ -189,7 +189,7 @@ func (x *ScaleButton) ConnectPopdown(cb func(ScaleButton)) {
189189 cb(fa)
190190
191191 }
192- gobject.ObjectConnect(x.GoPointer(), "signal::popdown", purego.NewCallback(fcb))
192+ return gobject.SignalConnect(x.GoPointer(), "popdown", purego.NewCallback(fcb))
193193 }
194194
195195 // Emitted to popup the scale widget.
@@ -198,7 +198,7 @@ func (x *ScaleButton) ConnectPopdown(cb func(ScaleButton)) {
198198 //
199199 // The default bindings for this signal are <kbd>Space</kbd>,
200200 // <kbd>Enter</kbd> and <kbd>Return</kbd>.
201-func (x *ScaleButton) ConnectPopup(cb func(ScaleButton)) {
201+func (x *ScaleButton) ConnectPopup(cb func(ScaleButton)) uint32 {
202202 fcb := func(clsPtr uintptr) {
203203 fa := ScaleButton{}
204204 fa.Ptr = clsPtr
@@ -206,11 +206,11 @@ func (x *ScaleButton) ConnectPopup(cb func(ScaleButton)) {
206206 cb(fa)
207207
208208 }
209- gobject.ObjectConnect(x.GoPointer(), "signal::popup", purego.NewCallback(fcb))
209+ return gobject.SignalConnect(x.GoPointer(), "popup", purego.NewCallback(fcb))
210210 }
211211
212212 // Emitted when the value field has changed.
213-func (x *ScaleButton) ConnectValueChanged(cb func(ScaleButton, float64)) {
213+func (x *ScaleButton) ConnectValueChanged(cb func(ScaleButton, float64)) uint32 {
214214 fcb := func(clsPtr uintptr, ValueVarp float64) {
215215 fa := ScaleButton{}
216216 fa.Ptr = clsPtr
@@ -218,7 +218,7 @@ func (x *ScaleButton) ConnectValueChanged(cb func(ScaleButton, float64)) {
218218 cb(fa, ValueVarp)
219219
220220 }
221- gobject.ObjectConnect(x.GoPointer(), "signal::value-changed", purego.NewCallback(fcb))
221+ return gobject.SignalConnect(x.GoPointer(), "value-changed", purego.NewCallback(fcb))
222222 }
223223
224224 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkscrolledwindow.go +8 -8
@@ -557,7 +557,7 @@ func (c *ScrolledWindow) SetGoPointer(ptr uintptr) {
557557 //
558558 // Note: The @pos argument is LTR/RTL aware, so callers should be
559559 // aware too if intending to provide behavior on horizontal edges.
560-func (x *ScrolledWindow) ConnectEdgeOvershot(cb func(ScrolledWindow, PositionType)) {
560+func (x *ScrolledWindow) ConnectEdgeOvershot(cb func(ScrolledWindow, PositionType)) uint32 {
561561 fcb := func(clsPtr uintptr, PosVarp PositionType) {
562562 fa := ScrolledWindow{}
563563 fa.Ptr = clsPtr
@@ -565,7 +565,7 @@ func (x *ScrolledWindow) ConnectEdgeOvershot(cb func(ScrolledWindow, PositionTyp
565565 cb(fa, PosVarp)
566566
567567 }
568- gobject.ObjectConnect(x.GoPointer(), "signal::edge-overshot", purego.NewCallback(fcb))
568+ return gobject.SignalConnect(x.GoPointer(), "edge-overshot", purego.NewCallback(fcb))
569569 }
570570
571571 // Emitted whenever user-initiated scrolling makes the scrolled
@@ -577,7 +577,7 @@ func (x *ScrolledWindow) ConnectEdgeOvershot(cb func(ScrolledWindow, PositionTyp
577577 //
578578 // Note: The @pos argument is LTR/RTL aware, so callers should be
579579 // aware too if intending to provide behavior on horizontal edges.
580-func (x *ScrolledWindow) ConnectEdgeReached(cb func(ScrolledWindow, PositionType)) {
580+func (x *ScrolledWindow) ConnectEdgeReached(cb func(ScrolledWindow, PositionType)) uint32 {
581581 fcb := func(clsPtr uintptr, PosVarp PositionType) {
582582 fa := ScrolledWindow{}
583583 fa.Ptr = clsPtr
@@ -585,7 +585,7 @@ func (x *ScrolledWindow) ConnectEdgeReached(cb func(ScrolledWindow, PositionType
585585 cb(fa, PosVarp)
586586
587587 }
588- gobject.ObjectConnect(x.GoPointer(), "signal::edge-reached", purego.NewCallback(fcb))
588+ return gobject.SignalConnect(x.GoPointer(), "edge-reached", purego.NewCallback(fcb))
589589 }
590590
591591 // Emitted when focus is moved away from the scrolled window by a
@@ -596,7 +596,7 @@ func (x *ScrolledWindow) ConnectEdgeReached(cb func(ScrolledWindow, PositionType
596596 // The default bindings for this signal are
597597 // `Ctrl + Tab` to move forward and `Ctrl + Shift + Tab` to
598598 // move backward.
599-func (x *ScrolledWindow) ConnectMoveFocusOut(cb func(ScrolledWindow, DirectionType)) {
599+func (x *ScrolledWindow) ConnectMoveFocusOut(cb func(ScrolledWindow, DirectionType)) uint32 {
600600 fcb := func(clsPtr uintptr, DirectionTypeVarp DirectionType) {
601601 fa := ScrolledWindow{}
602602 fa.Ptr = clsPtr
@@ -604,7 +604,7 @@ func (x *ScrolledWindow) ConnectMoveFocusOut(cb func(ScrolledWindow, DirectionTy
604604 cb(fa, DirectionTypeVarp)
605605
606606 }
607- gobject.ObjectConnect(x.GoPointer(), "signal::move-focus-out", purego.NewCallback(fcb))
607+ return gobject.SignalConnect(x.GoPointer(), "move-focus-out", purego.NewCallback(fcb))
608608 }
609609
610610 // Emitted when a keybinding that scrolls is pressed.
@@ -613,7 +613,7 @@ func (x *ScrolledWindow) ConnectMoveFocusOut(cb func(ScrolledWindow, DirectionTy
613613 //
614614 // The horizontal or vertical adjustment is updated which triggers a
615615 // signal that the scrolled window’s child may listen to and scroll itself.
616-func (x *ScrolledWindow) ConnectScrollChild(cb func(ScrolledWindow, ScrollType, bool) bool) {
616+func (x *ScrolledWindow) ConnectScrollChild(cb func(ScrolledWindow, ScrollType, bool) bool) uint32 {
617617 fcb := func(clsPtr uintptr, ScrollVarp ScrollType, HorizontalVarp bool) bool {
618618 fa := ScrolledWindow{}
619619 fa.Ptr = clsPtr
@@ -621,7 +621,7 @@ func (x *ScrolledWindow) ConnectScrollChild(cb func(ScrolledWindow, ScrollType,
621621 return cb(fa, ScrollVarp, HorizontalVarp)
622622
623623 }
624- gobject.ObjectConnect(x.GoPointer(), "signal::scroll-child", purego.NewCallback(fcb))
624+ return gobject.SignalConnect(x.GoPointer(), "scroll-child", purego.NewCallback(fcb))
625625 }
626626
627627 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtksearchentry.go +12 -12
@@ -151,7 +151,7 @@ func (c *SearchEntry) SetGoPointer(ptr uintptr) {
151151 // Emitted when the entry is activated.
152152 //
153153 // The keybindings for this signal are all forms of the Enter key.
154-func (x *SearchEntry) ConnectActivate(cb func(SearchEntry)) {
154+func (x *SearchEntry) ConnectActivate(cb func(SearchEntry)) uint32 {
155155 fcb := func(clsPtr uintptr) {
156156 fa := SearchEntry{}
157157 fa.Ptr = clsPtr
@@ -159,7 +159,7 @@ func (x *SearchEntry) ConnectActivate(cb func(SearchEntry)) {
159159 cb(fa)
160160
161161 }
162- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
162+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
163163 }
164164
165165 // Emitted when the user initiates a move to the next match
@@ -171,7 +171,7 @@ func (x *SearchEntry) ConnectActivate(cb func(SearchEntry)) {
171171 // between matches.
172172 //
173173 // The default bindings for this signal is Ctrl-g.
174-func (x *SearchEntry) ConnectNextMatch(cb func(SearchEntry)) {
174+func (x *SearchEntry) ConnectNextMatch(cb func(SearchEntry)) uint32 {
175175 fcb := func(clsPtr uintptr) {
176176 fa := SearchEntry{}
177177 fa.Ptr = clsPtr
@@ -179,7 +179,7 @@ func (x *SearchEntry) ConnectNextMatch(cb func(SearchEntry)) {
179179 cb(fa)
180180
181181 }
182- gobject.ObjectConnect(x.GoPointer(), "signal::next-match", purego.NewCallback(fcb))
182+ return gobject.SignalConnect(x.GoPointer(), "next-match", purego.NewCallback(fcb))
183183 }
184184
185185 // Emitted when the user initiates a move to the previous match
@@ -191,7 +191,7 @@ func (x *SearchEntry) ConnectNextMatch(cb func(SearchEntry)) {
191191 // between matches.
192192 //
193193 // The default bindings for this signal is Ctrl-Shift-g.
194-func (x *SearchEntry) ConnectPreviousMatch(cb func(SearchEntry)) {
194+func (x *SearchEntry) ConnectPreviousMatch(cb func(SearchEntry)) uint32 {
195195 fcb := func(clsPtr uintptr) {
196196 fa := SearchEntry{}
197197 fa.Ptr = clsPtr
@@ -199,13 +199,13 @@ func (x *SearchEntry) ConnectPreviousMatch(cb func(SearchEntry)) {
199199 cb(fa)
200200
201201 }
202- gobject.ObjectConnect(x.GoPointer(), "signal::previous-match", purego.NewCallback(fcb))
202+ return gobject.SignalConnect(x.GoPointer(), "previous-match", purego.NewCallback(fcb))
203203 }
204204
205205 // Emitted with a delay. The length of the delay can be
206206 // changed with the [property@Gtk.SearchEntry:search-delay]
207207 // property.
208-func (x *SearchEntry) ConnectSearchChanged(cb func(SearchEntry)) {
208+func (x *SearchEntry) ConnectSearchChanged(cb func(SearchEntry)) uint32 {
209209 fcb := func(clsPtr uintptr) {
210210 fa := SearchEntry{}
211211 fa.Ptr = clsPtr
@@ -213,11 +213,11 @@ func (x *SearchEntry) ConnectSearchChanged(cb func(SearchEntry)) {
213213 cb(fa)
214214
215215 }
216- gobject.ObjectConnect(x.GoPointer(), "signal::search-changed", purego.NewCallback(fcb))
216+ return gobject.SignalConnect(x.GoPointer(), "search-changed", purego.NewCallback(fcb))
217217 }
218218
219219 // Emitted when the user initiated a search on the entry.
220-func (x *SearchEntry) ConnectSearchStarted(cb func(SearchEntry)) {
220+func (x *SearchEntry) ConnectSearchStarted(cb func(SearchEntry)) uint32 {
221221 fcb := func(clsPtr uintptr) {
222222 fa := SearchEntry{}
223223 fa.Ptr = clsPtr
@@ -225,7 +225,7 @@ func (x *SearchEntry) ConnectSearchStarted(cb func(SearchEntry)) {
225225 cb(fa)
226226
227227 }
228- gobject.ObjectConnect(x.GoPointer(), "signal::search-started", purego.NewCallback(fcb))
228+ return gobject.SignalConnect(x.GoPointer(), "search-started", purego.NewCallback(fcb))
229229 }
230230
231231 // Emitted when the user stops a search via keyboard input.
@@ -236,7 +236,7 @@ func (x *SearchEntry) ConnectSearchStarted(cb func(SearchEntry)) {
236236 // the search entry in this case.
237237 //
238238 // The default bindings for this signal is Escape.
239-func (x *SearchEntry) ConnectStopSearch(cb func(SearchEntry)) {
239+func (x *SearchEntry) ConnectStopSearch(cb func(SearchEntry)) uint32 {
240240 fcb := func(clsPtr uintptr) {
241241 fa := SearchEntry{}
242242 fa.Ptr = clsPtr
@@ -244,7 +244,7 @@ func (x *SearchEntry) ConnectStopSearch(cb func(SearchEntry)) {
244244 cb(fa)
245245
246246 }
247- gobject.ObjectConnect(x.GoPointer(), "signal::stop-search", purego.NewCallback(fcb))
247+ return gobject.SignalConnect(x.GoPointer(), "stop-search", purego.NewCallback(fcb))
248248 }
249249
250250 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkshortcutssection.go +2 -2
@@ -40,7 +40,7 @@ func (c *ShortcutsSection) SetGoPointer(ptr uintptr) {
4040 c.Ptr = ptr
4141 }
4242
43-func (x *ShortcutsSection) ConnectChangeCurrentPage(cb func(ShortcutsSection, int) bool) {
43+func (x *ShortcutsSection) ConnectChangeCurrentPage(cb func(ShortcutsSection, int) bool) uint32 {
4444 fcb := func(clsPtr uintptr, ObjectVarp int) bool {
4545 fa := ShortcutsSection{}
4646 fa.Ptr = clsPtr
@@ -48,7 +48,7 @@ func (x *ShortcutsSection) ConnectChangeCurrentPage(cb func(ShortcutsSection, in
4848 return cb(fa, ObjectVarp)
4949
5050 }
51- gobject.ObjectConnect(x.GoPointer(), "signal::change-current-page", purego.NewCallback(fcb))
51+ return gobject.SignalConnect(x.GoPointer(), "change-current-page", purego.NewCallback(fcb))
5252 }
5353
5454 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkshortcutswindow.go +4 -4
@@ -72,7 +72,7 @@ func (c *ShortcutsWindow) SetGoPointer(ptr uintptr) {
7272 // This is a [keybinding signal](class.SignalAction.html).
7373 //
7474 // The default binding for this signal is the Escape key.
75-func (x *ShortcutsWindow) ConnectClose(cb func(ShortcutsWindow)) {
75+func (x *ShortcutsWindow) ConnectClose(cb func(ShortcutsWindow)) uint32 {
7676 fcb := func(clsPtr uintptr) {
7777 fa := ShortcutsWindow{}
7878 fa.Ptr = clsPtr
@@ -80,7 +80,7 @@ func (x *ShortcutsWindow) ConnectClose(cb func(ShortcutsWindow)) {
8080 cb(fa)
8181
8282 }
83- gobject.ObjectConnect(x.GoPointer(), "signal::close", purego.NewCallback(fcb))
83+ return gobject.SignalConnect(x.GoPointer(), "close", purego.NewCallback(fcb))
8484 }
8585
8686 // Emitted when the user uses a keybinding to start a search.
@@ -88,7 +88,7 @@ func (x *ShortcutsWindow) ConnectClose(cb func(ShortcutsWindow)) {
8888 // This is a [keybinding signal](class.SignalAction.html).
8989 //
9090 // The default binding for this signal is Control-F.
91-func (x *ShortcutsWindow) ConnectSearch(cb func(ShortcutsWindow)) {
91+func (x *ShortcutsWindow) ConnectSearch(cb func(ShortcutsWindow)) uint32 {
9292 fcb := func(clsPtr uintptr) {
9393 fa := ShortcutsWindow{}
9494 fa.Ptr = clsPtr
@@ -96,7 +96,7 @@ func (x *ShortcutsWindow) ConnectSearch(cb func(ShortcutsWindow)) {
9696 cb(fa)
9797
9898 }
99- gobject.ObjectConnect(x.GoPointer(), "signal::search", purego.NewCallback(fcb))
99+ return gobject.SignalConnect(x.GoPointer(), "search", purego.NewCallback(fcb))
100100 }
101101
102102 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtksignallistitemfactory.go +8 -8
@@ -96,7 +96,7 @@ func (c *SignalListItemFactory) SetGoPointer(ptr uintptr) {
9696 // The [signal@Gtk.SignalListItemFactory::unbind] signal is the
9797 // opposite of this signal and can be used to undo everything done
9898 // in this signal.
99-func (x *SignalListItemFactory) ConnectBind(cb func(SignalListItemFactory, uintptr)) {
99+func (x *SignalListItemFactory) ConnectBind(cb func(SignalListItemFactory, uintptr)) uint32 {
100100 fcb := func(clsPtr uintptr, ObjectVarp uintptr) {
101101 fa := SignalListItemFactory{}
102102 fa.Ptr = clsPtr
@@ -104,7 +104,7 @@ func (x *SignalListItemFactory) ConnectBind(cb func(SignalListItemFactory, uintp
104104 cb(fa, ObjectVarp)
105105
106106 }
107- gobject.ObjectConnect(x.GoPointer(), "signal::bind", purego.NewCallback(fcb))
107+ return gobject.SignalConnect(x.GoPointer(), "bind", purego.NewCallback(fcb))
108108 }
109109
110110 // Emitted when a new listitem has been created and needs to be setup for use.
@@ -113,7 +113,7 @@ func (x *SignalListItemFactory) ConnectBind(cb func(SignalListItemFactory, uintp
113113 //
114114 // The [signal@Gtk.SignalListItemFactory::teardown] signal is the opposite
115115 // of this signal and can be used to undo everything done in this signal.
116-func (x *SignalListItemFactory) ConnectSetup(cb func(SignalListItemFactory, uintptr)) {
116+func (x *SignalListItemFactory) ConnectSetup(cb func(SignalListItemFactory, uintptr)) uint32 {
117117 fcb := func(clsPtr uintptr, ObjectVarp uintptr) {
118118 fa := SignalListItemFactory{}
119119 fa.Ptr = clsPtr
@@ -121,7 +121,7 @@ func (x *SignalListItemFactory) ConnectSetup(cb func(SignalListItemFactory, uint
121121 cb(fa, ObjectVarp)
122122
123123 }
124- gobject.ObjectConnect(x.GoPointer(), "signal::setup", purego.NewCallback(fcb))
124+ return gobject.SignalConnect(x.GoPointer(), "setup", purego.NewCallback(fcb))
125125 }
126126
127127 // Emitted when an object is about to be destroyed.
@@ -130,7 +130,7 @@ func (x *SignalListItemFactory) ConnectSetup(cb func(SignalListItemFactory, uint
130130 //
131131 // This signal is the opposite of the [signal@Gtk.SignalListItemFactory::setup]
132132 // signal and should be used to undo everything done in that signal.
133-func (x *SignalListItemFactory) ConnectTeardown(cb func(SignalListItemFactory, uintptr)) {
133+func (x *SignalListItemFactory) ConnectTeardown(cb func(SignalListItemFactory, uintptr)) uint32 {
134134 fcb := func(clsPtr uintptr, ObjectVarp uintptr) {
135135 fa := SignalListItemFactory{}
136136 fa.Ptr = clsPtr
@@ -138,7 +138,7 @@ func (x *SignalListItemFactory) ConnectTeardown(cb func(SignalListItemFactory, u
138138 cb(fa, ObjectVarp)
139139
140140 }
141- gobject.ObjectConnect(x.GoPointer(), "signal::teardown", purego.NewCallback(fcb))
141+ return gobject.SignalConnect(x.GoPointer(), "teardown", purego.NewCallback(fcb))
142142 }
143143
144144 // Emitted when a object has been unbound from its item, for example when
@@ -147,7 +147,7 @@ func (x *SignalListItemFactory) ConnectTeardown(cb func(SignalListItemFactory, u
147147 //
148148 // This signal is the opposite of the [signal@Gtk.SignalListItemFactory::bind]
149149 // signal and should be used to undo everything done in that signal.
150-func (x *SignalListItemFactory) ConnectUnbind(cb func(SignalListItemFactory, uintptr)) {
150+func (x *SignalListItemFactory) ConnectUnbind(cb func(SignalListItemFactory, uintptr)) uint32 {
151151 fcb := func(clsPtr uintptr, ObjectVarp uintptr) {
152152 fa := SignalListItemFactory{}
153153 fa.Ptr = clsPtr
@@ -155,7 +155,7 @@ func (x *SignalListItemFactory) ConnectUnbind(cb func(SignalListItemFactory, uin
155155 cb(fa, ObjectVarp)
156156
157157 }
158- gobject.ObjectConnect(x.GoPointer(), "signal::unbind", purego.NewCallback(fcb))
158+ return gobject.SignalConnect(x.GoPointer(), "unbind", purego.NewCallback(fcb))
159159 }
160160
161161 func init() {
M v4/gtk/gtksorter.go +2 -2
@@ -151,7 +151,7 @@ func (c *Sorter) SetGoPointer(ptr uintptr) {
151151 // Depending on the @change parameter, it may be possible to update
152152 // the sort order without a full resorting. Refer to the
153153 // [enum@Gtk.SorterChange] documentation for details.
154-func (x *Sorter) ConnectChanged(cb func(Sorter, SorterChange)) {
154+func (x *Sorter) ConnectChanged(cb func(Sorter, SorterChange)) uint32 {
155155 fcb := func(clsPtr uintptr, ChangeVarp SorterChange) {
156156 fa := Sorter{}
157157 fa.Ptr = clsPtr
@@ -159,7 +159,7 @@ func (x *Sorter) ConnectChanged(cb func(Sorter, SorterChange)) {
159159 cb(fa, ChangeVarp)
160160
161161 }
162- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
162+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
163163 }
164164
165165 func init() {
M v4/gtk/gtkspinbutton.go +10 -10
@@ -493,7 +493,7 @@ func (c *SpinButton) SetGoPointer(ptr uintptr) {
493493 // programmatically.
494494 //
495495 // The default bindings for this signal are Up/Down and PageUp/PageDown.
496-func (x *SpinButton) ConnectChangeValue(cb func(SpinButton, ScrollType)) {
496+func (x *SpinButton) ConnectChangeValue(cb func(SpinButton, ScrollType)) uint32 {
497497 fcb := func(clsPtr uintptr, ScrollVarp ScrollType) {
498498 fa := SpinButton{}
499499 fa.Ptr = clsPtr
@@ -501,7 +501,7 @@ func (x *SpinButton) ConnectChangeValue(cb func(SpinButton, ScrollType)) {
501501 cb(fa, ScrollVarp)
502502
503503 }
504- gobject.ObjectConnect(x.GoPointer(), "signal::change-value", purego.NewCallback(fcb))
504+ return gobject.SignalConnect(x.GoPointer(), "change-value", purego.NewCallback(fcb))
505505 }
506506
507507 // Emitted to convert the users input into a double value.
@@ -511,7 +511,7 @@ func (x *SpinButton) ConnectChangeValue(cb func(SpinButton, ScrollType)) {
511511 // new value.
512512 //
513513 // The default conversion uses g_strtod().
514-func (x *SpinButton) ConnectInput(cb func(SpinButton, float64) int) {
514+func (x *SpinButton) ConnectInput(cb func(SpinButton, float64) int) uint32 {
515515 fcb := func(clsPtr uintptr, NewValueVarp float64) int {
516516 fa := SpinButton{}
517517 fa.Ptr = clsPtr
@@ -519,7 +519,7 @@ func (x *SpinButton) ConnectInput(cb func(SpinButton, float64) int) {
519519 return cb(fa, NewValueVarp)
520520
521521 }
522- gobject.ObjectConnect(x.GoPointer(), "signal::input", purego.NewCallback(fcb))
522+ return gobject.SignalConnect(x.GoPointer(), "input", purego.NewCallback(fcb))
523523 }
524524
525525 // Emitted to tweak the formatting of the value for display.
@@ -546,7 +546,7 @@ func (x *SpinButton) ConnectInput(cb func(SpinButton, float64) int) {
546546 // }
547547 //
548548 // ```
549-func (x *SpinButton) ConnectOutput(cb func(SpinButton) bool) {
549+func (x *SpinButton) ConnectOutput(cb func(SpinButton) bool) uint32 {
550550 fcb := func(clsPtr uintptr) bool {
551551 fa := SpinButton{}
552552 fa.Ptr = clsPtr
@@ -554,13 +554,13 @@ func (x *SpinButton) ConnectOutput(cb func(SpinButton) bool) {
554554 return cb(fa)
555555
556556 }
557- gobject.ObjectConnect(x.GoPointer(), "signal::output", purego.NewCallback(fcb))
557+ return gobject.SignalConnect(x.GoPointer(), "output", purego.NewCallback(fcb))
558558 }
559559
560560 // Emitted when the value is changed.
561561 //
562562 // Also see the [signal@Gtk.SpinButton::output] signal.
563-func (x *SpinButton) ConnectValueChanged(cb func(SpinButton)) {
563+func (x *SpinButton) ConnectValueChanged(cb func(SpinButton)) uint32 {
564564 fcb := func(clsPtr uintptr) {
565565 fa := SpinButton{}
566566 fa.Ptr = clsPtr
@@ -568,12 +568,12 @@ func (x *SpinButton) ConnectValueChanged(cb func(SpinButton)) {
568568 cb(fa)
569569
570570 }
571- gobject.ObjectConnect(x.GoPointer(), "signal::value-changed", purego.NewCallback(fcb))
571+ return gobject.SignalConnect(x.GoPointer(), "value-changed", purego.NewCallback(fcb))
572572 }
573573
574574 // Emitted right after the spinbutton wraps from its maximum
575575 // to its minimum value or vice-versa.
576-func (x *SpinButton) ConnectWrapped(cb func(SpinButton)) {
576+func (x *SpinButton) ConnectWrapped(cb func(SpinButton)) uint32 {
577577 fcb := func(clsPtr uintptr) {
578578 fa := SpinButton{}
579579 fa.Ptr = clsPtr
@@ -581,7 +581,7 @@ func (x *SpinButton) ConnectWrapped(cb func(SpinButton)) {
581581 cb(fa)
582582
583583 }
584- gobject.ObjectConnect(x.GoPointer(), "signal::wrapped", purego.NewCallback(fcb))
584+ return gobject.SignalConnect(x.GoPointer(), "wrapped", purego.NewCallback(fcb))
585585 }
586586
587587 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkstatusbar.go +4 -4
@@ -134,7 +134,7 @@ func (c *Statusbar) SetGoPointer(ptr uintptr) {
134134 }
135135
136136 // Emitted whenever a new message is popped off a statusbar's stack.
137-func (x *Statusbar) ConnectTextPopped(cb func(Statusbar, uint, string)) {
137+func (x *Statusbar) ConnectTextPopped(cb func(Statusbar, uint, string)) uint32 {
138138 fcb := func(clsPtr uintptr, ContextIdVarp uint, TextVarp string) {
139139 fa := Statusbar{}
140140 fa.Ptr = clsPtr
@@ -142,11 +142,11 @@ func (x *Statusbar) ConnectTextPopped(cb func(Statusbar, uint, string)) {
142142 cb(fa, ContextIdVarp, TextVarp)
143143
144144 }
145- gobject.ObjectConnect(x.GoPointer(), "signal::text-popped", purego.NewCallback(fcb))
145+ return gobject.SignalConnect(x.GoPointer(), "text-popped", purego.NewCallback(fcb))
146146 }
147147
148148 // Emitted whenever a new message gets pushed onto a statusbar's stack.
149-func (x *Statusbar) ConnectTextPushed(cb func(Statusbar, uint, string)) {
149+func (x *Statusbar) ConnectTextPushed(cb func(Statusbar, uint, string)) uint32 {
150150 fcb := func(clsPtr uintptr, ContextIdVarp uint, TextVarp string) {
151151 fa := Statusbar{}
152152 fa.Ptr = clsPtr
@@ -154,7 +154,7 @@ func (x *Statusbar) ConnectTextPushed(cb func(Statusbar, uint, string)) {
154154 cb(fa, ContextIdVarp, TextVarp)
155155
156156 }
157- gobject.ObjectConnect(x.GoPointer(), "signal::text-pushed", purego.NewCallback(fcb))
157+ return gobject.SignalConnect(x.GoPointer(), "text-pushed", purego.NewCallback(fcb))
158158 }
159159
160160 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkswitch.go +4 -4
@@ -115,7 +115,7 @@ func (c *Switch) SetGoPointer(ptr uintptr) {
115115 //
116116 // Applications should never connect to this signal,
117117 // but use the [property@Gtk.Switch:active] property.
118-func (x *Switch) ConnectActivate(cb func(Switch)) {
118+func (x *Switch) ConnectActivate(cb func(Switch)) uint32 {
119119 fcb := func(clsPtr uintptr) {
120120 fa := Switch{}
121121 fa.Ptr = clsPtr
@@ -123,7 +123,7 @@ func (x *Switch) ConnectActivate(cb func(Switch)) {
123123 cb(fa)
124124
125125 }
126- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
126+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
127127 }
128128
129129 // Emitted to change the underlying state.
@@ -141,7 +141,7 @@ func (x *Switch) ConnectActivate(cb func(Switch)) {
141141 // Visually, the underlying state is represented by the trough color of
142142 // the switch, while the [property@Gtk.Switch:active] property is
143143 // represented by the position of the switch.
144-func (x *Switch) ConnectStateSet(cb func(Switch, bool) bool) {
144+func (x *Switch) ConnectStateSet(cb func(Switch, bool) bool) uint32 {
145145 fcb := func(clsPtr uintptr, StateVarp bool) bool {
146146 fa := Switch{}
147147 fa.Ptr = clsPtr
@@ -149,7 +149,7 @@ func (x *Switch) ConnectStateSet(cb func(Switch, bool) bool) {
149149 return cb(fa, StateVarp)
150150
151151 }
152- gobject.ObjectConnect(x.GoPointer(), "signal::state-set", purego.NewCallback(fcb))
152+ return gobject.SignalConnect(x.GoPointer(), "state-set", purego.NewCallback(fcb))
153153 }
154154
155155 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtktext.go +22 -22
@@ -542,7 +542,7 @@ func (c *Text) SetGoPointer(ptr uintptr) {
542542 //
543543 // The default bindings for this signal are all forms
544544 // of the <kbd>Enter</kbd> key.
545-func (x *Text) ConnectActivate(cb func(Text)) {
545+func (x *Text) ConnectActivate(cb func(Text)) uint32 {
546546 fcb := func(clsPtr uintptr) {
547547 fa := Text{}
548548 fa.Ptr = clsPtr
@@ -550,7 +550,7 @@ func (x *Text) ConnectActivate(cb func(Text)) {
550550 cb(fa)
551551
552552 }
553- gobject.ObjectConnect(x.GoPointer(), "signal::activate", purego.NewCallback(fcb))
553+ return gobject.SignalConnect(x.GoPointer(), "activate", purego.NewCallback(fcb))
554554 }
555555
556556 // Emitted when the user asks for it.
@@ -559,7 +559,7 @@ func (x *Text) ConnectActivate(cb func(Text)) {
559559 //
560560 // The default bindings for this signal are
561561 // <kbd>Backspace</kbd> and <kbd>Shift</kbd>-<kbd>Backspace</kbd>.
562-func (x *Text) ConnectBackspace(cb func(Text)) {
562+func (x *Text) ConnectBackspace(cb func(Text)) uint32 {
563563 fcb := func(clsPtr uintptr) {
564564 fa := Text{}
565565 fa.Ptr = clsPtr
@@ -567,7 +567,7 @@ func (x *Text) ConnectBackspace(cb func(Text)) {
567567 cb(fa)
568568
569569 }
570- gobject.ObjectConnect(x.GoPointer(), "signal::backspace", purego.NewCallback(fcb))
570+ return gobject.SignalConnect(x.GoPointer(), "backspace", purego.NewCallback(fcb))
571571 }
572572
573573 // Emitted to copy the selection to the clipboard.
@@ -577,7 +577,7 @@ func (x *Text) ConnectBackspace(cb func(Text)) {
577577 // The default bindings for this signal are
578578 // <kbd>Ctrl</kbd>-<kbd>c</kbd> and
579579 // <kbd>Ctrl</kbd>-<kbd>Insert</kbd>.
580-func (x *Text) ConnectCopyClipboard(cb func(Text)) {
580+func (x *Text) ConnectCopyClipboard(cb func(Text)) uint32 {
581581 fcb := func(clsPtr uintptr) {
582582 fa := Text{}
583583 fa.Ptr = clsPtr
@@ -585,7 +585,7 @@ func (x *Text) ConnectCopyClipboard(cb func(Text)) {
585585 cb(fa)
586586
587587 }
588- gobject.ObjectConnect(x.GoPointer(), "signal::copy-clipboard", purego.NewCallback(fcb))
588+ return gobject.SignalConnect(x.GoPointer(), "copy-clipboard", purego.NewCallback(fcb))
589589 }
590590
591591 // Emitted to cut the selection to the clipboard.
@@ -595,7 +595,7 @@ func (x *Text) ConnectCopyClipboard(cb func(Text)) {
595595 // The default bindings for this signal are
596596 // <kbd>Ctrl</kbd>-<kbd>x</kbd> and
597597 // <kbd>Shift</kbd>-<kbd>Delete</kbd>.
598-func (x *Text) ConnectCutClipboard(cb func(Text)) {
598+func (x *Text) ConnectCutClipboard(cb func(Text)) uint32 {
599599 fcb := func(clsPtr uintptr) {
600600 fa := Text{}
601601 fa.Ptr = clsPtr
@@ -603,7 +603,7 @@ func (x *Text) ConnectCutClipboard(cb func(Text)) {
603603 cb(fa)
604604
605605 }
606- gobject.ObjectConnect(x.GoPointer(), "signal::cut-clipboard", purego.NewCallback(fcb))
606+ return gobject.SignalConnect(x.GoPointer(), "cut-clipboard", purego.NewCallback(fcb))
607607 }
608608
609609 // Emitted when the user initiates a text deletion.
@@ -617,7 +617,7 @@ func (x *Text) ConnectCutClipboard(cb func(Text)) {
617617 // The default bindings for this signal are <kbd>Delete</kbd>
618618 // for deleting a character and <kbd>Ctrl</kbd>-<kbd>Delete</kbd>
619619 // for deleting a word.
620-func (x *Text) ConnectDeleteFromCursor(cb func(Text, DeleteType, int)) {
620+func (x *Text) ConnectDeleteFromCursor(cb func(Text, DeleteType, int)) uint32 {
621621 fcb := func(clsPtr uintptr, TypeVarp DeleteType, CountVarp int) {
622622 fa := Text{}
623623 fa.Ptr = clsPtr
@@ -625,7 +625,7 @@ func (x *Text) ConnectDeleteFromCursor(cb func(Text, DeleteType, int)) {
625625 cb(fa, TypeVarp, CountVarp)
626626
627627 }
628- gobject.ObjectConnect(x.GoPointer(), "signal::delete-from-cursor", purego.NewCallback(fcb))
628+ return gobject.SignalConnect(x.GoPointer(), "delete-from-cursor", purego.NewCallback(fcb))
629629 }
630630
631631 // Emitted when the user initiates the insertion of a
@@ -634,7 +634,7 @@ func (x *Text) ConnectDeleteFromCursor(cb func(Text, DeleteType, int)) {
634634 // This is a [keybinding signal](class.SignalAction.html).
635635 //
636636 // This signal has no default bindings.
637-func (x *Text) ConnectInsertAtCursor(cb func(Text, string)) {
637+func (x *Text) ConnectInsertAtCursor(cb func(Text, string)) uint32 {
638638 fcb := func(clsPtr uintptr, StringVarp string) {
639639 fa := Text{}
640640 fa.Ptr = clsPtr
@@ -642,7 +642,7 @@ func (x *Text) ConnectInsertAtCursor(cb func(Text, string)) {
642642 cb(fa, StringVarp)
643643
644644 }
645- gobject.ObjectConnect(x.GoPointer(), "signal::insert-at-cursor", purego.NewCallback(fcb))
645+ return gobject.SignalConnect(x.GoPointer(), "insert-at-cursor", purego.NewCallback(fcb))
646646 }
647647
648648 // Emitted to present the Emoji chooser for the widget.
@@ -652,7 +652,7 @@ func (x *Text) ConnectInsertAtCursor(cb func(Text, string)) {
652652 // The default bindings for this signal are
653653 // <kbd>Ctrl</kbd>-<kbd>.</kbd> and
654654 // <kbd>Ctrl</kbd>-<kbd>;</kbd>
655-func (x *Text) ConnectInsertEmoji(cb func(Text)) {
655+func (x *Text) ConnectInsertEmoji(cb func(Text)) uint32 {
656656 fcb := func(clsPtr uintptr) {
657657 fa := Text{}
658658 fa.Ptr = clsPtr
@@ -660,7 +660,7 @@ func (x *Text) ConnectInsertEmoji(cb func(Text)) {
660660 cb(fa)
661661
662662 }
663- gobject.ObjectConnect(x.GoPointer(), "signal::insert-emoji", purego.NewCallback(fcb))
663+ return gobject.SignalConnect(x.GoPointer(), "insert-emoji", purego.NewCallback(fcb))
664664 }
665665
666666 // Emitted when the user initiates a cursor movement.
@@ -683,7 +683,7 @@ func (x *Text) ConnectInsertEmoji(cb func(Text)) {
683683 // move by individual characters/lines
684684 // - <kbd>Ctrl</kbd>-<kbd>→</kbd>, etc. move by words/paragraphs
685685 // - <kbd>Home</kbd>, <kbd>End</kbd> move to the ends of the buffer
686-func (x *Text) ConnectMoveCursor(cb func(Text, MovementStep, int, bool)) {
686+func (x *Text) ConnectMoveCursor(cb func(Text, MovementStep, int, bool)) uint32 {
687687 fcb := func(clsPtr uintptr, StepVarp MovementStep, CountVarp int, ExtendVarp bool) {
688688 fa := Text{}
689689 fa.Ptr = clsPtr
@@ -691,7 +691,7 @@ func (x *Text) ConnectMoveCursor(cb func(Text, MovementStep, int, bool)) {
691691 cb(fa, StepVarp, CountVarp, ExtendVarp)
692692
693693 }
694- gobject.ObjectConnect(x.GoPointer(), "signal::move-cursor", purego.NewCallback(fcb))
694+ return gobject.SignalConnect(x.GoPointer(), "move-cursor", purego.NewCallback(fcb))
695695 }
696696
697697 // Emitted to paste the contents of the clipboard.
@@ -700,7 +700,7 @@ func (x *Text) ConnectMoveCursor(cb func(Text, MovementStep, int, bool)) {
700700 //
701701 // The default bindings for this signal are
702702 // <kbd>Ctrl</kbd>-<kbd>v</kbd> and <kbd>Shift</kbd>-<kbd>Insert</kbd>.
703-func (x *Text) ConnectPasteClipboard(cb func(Text)) {
703+func (x *Text) ConnectPasteClipboard(cb func(Text)) uint32 {
704704 fcb := func(clsPtr uintptr) {
705705 fa := Text{}
706706 fa.Ptr = clsPtr
@@ -708,7 +708,7 @@ func (x *Text) ConnectPasteClipboard(cb func(Text)) {
708708 cb(fa)
709709
710710 }
711- gobject.ObjectConnect(x.GoPointer(), "signal::paste-clipboard", purego.NewCallback(fcb))
711+ return gobject.SignalConnect(x.GoPointer(), "paste-clipboard", purego.NewCallback(fcb))
712712 }
713713
714714 // Emitted when the preedit text changes.
@@ -716,7 +716,7 @@ func (x *Text) ConnectPasteClipboard(cb func(Text)) {
716716 // If an input method is used, the typed text will not immediately
717717 // be committed to the buffer. So if you are interested in the text,
718718 // connect to this signal.
719-func (x *Text) ConnectPreeditChanged(cb func(Text, string)) {
719+func (x *Text) ConnectPreeditChanged(cb func(Text, string)) uint32 {
720720 fcb := func(clsPtr uintptr, PreeditVarp string) {
721721 fa := Text{}
722722 fa.Ptr = clsPtr
@@ -724,7 +724,7 @@ func (x *Text) ConnectPreeditChanged(cb func(Text, string)) {
724724 cb(fa, PreeditVarp)
725725
726726 }
727- gobject.ObjectConnect(x.GoPointer(), "signal::preedit-changed", purego.NewCallback(fcb))
727+ return gobject.SignalConnect(x.GoPointer(), "preedit-changed", purego.NewCallback(fcb))
728728 }
729729
730730 // Emitted to toggle the overwrite mode of the `GtkText`.
@@ -732,7 +732,7 @@ func (x *Text) ConnectPreeditChanged(cb func(Text, string)) {
732732 // This is a [keybinding signal](class.SignalAction.html).
733733 //
734734 // The default bindings for this signal is <kbd>Insert</kbd>.
735-func (x *Text) ConnectToggleOverwrite(cb func(Text)) {
735+func (x *Text) ConnectToggleOverwrite(cb func(Text)) uint32 {
736736 fcb := func(clsPtr uintptr) {
737737 fa := Text{}
738738 fa.Ptr = clsPtr
@@ -740,7 +740,7 @@ func (x *Text) ConnectToggleOverwrite(cb func(Text)) {
740740 cb(fa)
741741
742742 }
743- gobject.ObjectConnect(x.GoPointer(), "signal::toggle-overwrite", purego.NewCallback(fcb))
743+ return gobject.SignalConnect(x.GoPointer(), "toggle-overwrite", purego.NewCallback(fcb))
744744 }
745745
746746 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtktextbuffer.go +30 -30
@@ -1147,7 +1147,7 @@ func (c *TextBuffer) SetGoPointer(ptr uintptr) {
11471147 // [method@Gtk.TextBuffer.apply_tag],
11481148 // [method@Gtk.TextBuffer.insert_with_tags],
11491149 // [method@Gtk.TextBuffer.insert_range].
1150-func (x *TextBuffer) ConnectApplyTag(cb func(TextBuffer, uintptr, uintptr, uintptr)) {
1150+func (x *TextBuffer) ConnectApplyTag(cb func(TextBuffer, uintptr, uintptr, uintptr)) uint32 {
11511151 fcb := func(clsPtr uintptr, TagVarp uintptr, StartVarp uintptr, EndVarp uintptr) {
11521152 fa := TextBuffer{}
11531153 fa.Ptr = clsPtr
@@ -1155,7 +1155,7 @@ func (x *TextBuffer) ConnectApplyTag(cb func(TextBuffer, uintptr, uintptr, uintp
11551155 cb(fa, TagVarp, StartVarp, EndVarp)
11561156
11571157 }
1158- gobject.ObjectConnect(x.GoPointer(), "signal::apply-tag", purego.NewCallback(fcb))
1158+ return gobject.SignalConnect(x.GoPointer(), "apply-tag", purego.NewCallback(fcb))
11591159 }
11601160
11611161 // Emitted at the beginning of a single user-visible
@@ -1168,7 +1168,7 @@ func (x *TextBuffer) ConnectApplyTag(cb func(TextBuffer, uintptr, uintptr, uintp
11681168 // [method@Gtk.TextBuffer.delete_interactive],
11691169 // [method@Gtk.TextBuffer.backspace],
11701170 // [method@Gtk.TextBuffer.delete_selection].
1171-func (x *TextBuffer) ConnectBeginUserAction(cb func(TextBuffer)) {
1171+func (x *TextBuffer) ConnectBeginUserAction(cb func(TextBuffer)) uint32 {
11721172 fcb := func(clsPtr uintptr) {
11731173 fa := TextBuffer{}
11741174 fa.Ptr = clsPtr
@@ -1176,11 +1176,11 @@ func (x *TextBuffer) ConnectBeginUserAction(cb func(TextBuffer)) {
11761176 cb(fa)
11771177
11781178 }
1179- gobject.ObjectConnect(x.GoPointer(), "signal::begin-user-action", purego.NewCallback(fcb))
1179+ return gobject.SignalConnect(x.GoPointer(), "begin-user-action", purego.NewCallback(fcb))
11801180 }
11811181
11821182 // Emitted when the content of a `GtkTextBuffer` has changed.
1183-func (x *TextBuffer) ConnectChanged(cb func(TextBuffer)) {
1183+func (x *TextBuffer) ConnectChanged(cb func(TextBuffer)) uint32 {
11841184 fcb := func(clsPtr uintptr) {
11851185 fa := TextBuffer{}
11861186 fa.Ptr = clsPtr
@@ -1188,7 +1188,7 @@ func (x *TextBuffer) ConnectChanged(cb func(TextBuffer)) {
11881188 cb(fa)
11891189
11901190 }
1191- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
1191+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
11921192 }
11931193
11941194 // Emitted to delete a range from a `GtkTextBuffer`.
@@ -1202,7 +1202,7 @@ func (x *TextBuffer) ConnectChanged(cb func(TextBuffer)) {
12021202 // the deleted text.
12031203 //
12041204 // See also: [method@Gtk.TextBuffer.delete].
1205-func (x *TextBuffer) ConnectDeleteRange(cb func(TextBuffer, uintptr, uintptr)) {
1205+func (x *TextBuffer) ConnectDeleteRange(cb func(TextBuffer, uintptr, uintptr)) uint32 {
12061206 fcb := func(clsPtr uintptr, StartVarp uintptr, EndVarp uintptr) {
12071207 fa := TextBuffer{}
12081208 fa.Ptr = clsPtr
@@ -1210,7 +1210,7 @@ func (x *TextBuffer) ConnectDeleteRange(cb func(TextBuffer, uintptr, uintptr)) {
12101210 cb(fa, StartVarp, EndVarp)
12111211
12121212 }
1213- gobject.ObjectConnect(x.GoPointer(), "signal::delete-range", purego.NewCallback(fcb))
1213+ return gobject.SignalConnect(x.GoPointer(), "delete-range", purego.NewCallback(fcb))
12141214 }
12151215
12161216 // Emitted at the end of a single user-visible
@@ -1224,7 +1224,7 @@ func (x *TextBuffer) ConnectDeleteRange(cb func(TextBuffer, uintptr, uintptr)) {
12241224 // [method@Gtk.TextBuffer.backspace],
12251225 // [method@Gtk.TextBuffer.delete_selection],
12261226 // [method@Gtk.TextBuffer.backspace].
1227-func (x *TextBuffer) ConnectEndUserAction(cb func(TextBuffer)) {
1227+func (x *TextBuffer) ConnectEndUserAction(cb func(TextBuffer)) uint32 {
12281228 fcb := func(clsPtr uintptr) {
12291229 fa := TextBuffer{}
12301230 fa.Ptr = clsPtr
@@ -1232,7 +1232,7 @@ func (x *TextBuffer) ConnectEndUserAction(cb func(TextBuffer)) {
12321232 cb(fa)
12331233
12341234 }
1235- gobject.ObjectConnect(x.GoPointer(), "signal::end-user-action", purego.NewCallback(fcb))
1235+ return gobject.SignalConnect(x.GoPointer(), "end-user-action", purego.NewCallback(fcb))
12361236 }
12371237
12381238 // Emitted to insert a `GtkTextChildAnchor` in a `GtkTextBuffer`.
@@ -1245,7 +1245,7 @@ func (x *TextBuffer) ConnectEndUserAction(cb func(TextBuffer)) {
12451245 // it to be placed after the inserted @anchor.
12461246 //
12471247 // See also: [method@Gtk.TextBuffer.insert_child_anchor].
1248-func (x *TextBuffer) ConnectInsertChildAnchor(cb func(TextBuffer, uintptr, uintptr)) {
1248+func (x *TextBuffer) ConnectInsertChildAnchor(cb func(TextBuffer, uintptr, uintptr)) uint32 {
12491249 fcb := func(clsPtr uintptr, LocationVarp uintptr, AnchorVarp uintptr) {
12501250 fa := TextBuffer{}
12511251 fa.Ptr = clsPtr
@@ -1253,7 +1253,7 @@ func (x *TextBuffer) ConnectInsertChildAnchor(cb func(TextBuffer, uintptr, uintp
12531253 cb(fa, LocationVarp, AnchorVarp)
12541254
12551255 }
1256- gobject.ObjectConnect(x.GoPointer(), "signal::insert-child-anchor", purego.NewCallback(fcb))
1256+ return gobject.SignalConnect(x.GoPointer(), "insert-child-anchor", purego.NewCallback(fcb))
12571257 }
12581258
12591259 // Emitted to insert a `GdkPaintable` in a `GtkTextBuffer`.
@@ -1266,7 +1266,7 @@ func (x *TextBuffer) ConnectInsertChildAnchor(cb func(TextBuffer, uintptr, uintp
12661266 // it to be placed after the inserted @paintable.
12671267 //
12681268 // See also: [method@Gtk.TextBuffer.insert_paintable].
1269-func (x *TextBuffer) ConnectInsertPaintable(cb func(TextBuffer, uintptr, uintptr)) {
1269+func (x *TextBuffer) ConnectInsertPaintable(cb func(TextBuffer, uintptr, uintptr)) uint32 {
12701270 fcb := func(clsPtr uintptr, LocationVarp uintptr, PaintableVarp uintptr) {
12711271 fa := TextBuffer{}
12721272 fa.Ptr = clsPtr
@@ -1274,7 +1274,7 @@ func (x *TextBuffer) ConnectInsertPaintable(cb func(TextBuffer, uintptr, uintptr
12741274 cb(fa, LocationVarp, PaintableVarp)
12751275
12761276 }
1277- gobject.ObjectConnect(x.GoPointer(), "signal::insert-paintable", purego.NewCallback(fcb))
1277+ return gobject.SignalConnect(x.GoPointer(), "insert-paintable", purego.NewCallback(fcb))
12781278 }
12791279
12801280 // Emitted to insert text in a `GtkTextBuffer`.
@@ -1288,7 +1288,7 @@ func (x *TextBuffer) ConnectInsertPaintable(cb func(TextBuffer, uintptr, uintptr
12881288 //
12891289 // See also: [method@Gtk.TextBuffer.insert],
12901290 // [method@Gtk.TextBuffer.insert_range].
1291-func (x *TextBuffer) ConnectInsertText(cb func(TextBuffer, uintptr, string, int)) {
1291+func (x *TextBuffer) ConnectInsertText(cb func(TextBuffer, uintptr, string, int)) uint32 {
12921292 fcb := func(clsPtr uintptr, LocationVarp uintptr, TextVarp string, LenVarp int) {
12931293 fa := TextBuffer{}
12941294 fa.Ptr = clsPtr
@@ -1296,13 +1296,13 @@ func (x *TextBuffer) ConnectInsertText(cb func(TextBuffer, uintptr, string, int)
12961296 cb(fa, LocationVarp, TextVarp, LenVarp)
12971297
12981298 }
1299- gobject.ObjectConnect(x.GoPointer(), "signal::insert-text", purego.NewCallback(fcb))
1299+ return gobject.SignalConnect(x.GoPointer(), "insert-text", purego.NewCallback(fcb))
13001300 }
13011301
13021302 // Emitted as notification after a `GtkTextMark` is deleted.
13031303 //
13041304 // See also: [method@Gtk.TextBuffer.delete_mark].
1305-func (x *TextBuffer) ConnectMarkDeleted(cb func(TextBuffer, uintptr)) {
1305+func (x *TextBuffer) ConnectMarkDeleted(cb func(TextBuffer, uintptr)) uint32 {
13061306 fcb := func(clsPtr uintptr, MarkVarp uintptr) {
13071307 fa := TextBuffer{}
13081308 fa.Ptr = clsPtr
@@ -1310,7 +1310,7 @@ func (x *TextBuffer) ConnectMarkDeleted(cb func(TextBuffer, uintptr)) {
13101310 cb(fa, MarkVarp)
13111311
13121312 }
1313- gobject.ObjectConnect(x.GoPointer(), "signal::mark-deleted", purego.NewCallback(fcb))
1313+ return gobject.SignalConnect(x.GoPointer(), "mark-deleted", purego.NewCallback(fcb))
13141314 }
13151315
13161316 // Emitted as notification after a `GtkTextMark` is set.
@@ -1318,7 +1318,7 @@ func (x *TextBuffer) ConnectMarkDeleted(cb func(TextBuffer, uintptr)) {
13181318 // See also:
13191319 // [method@Gtk.TextBuffer.create_mark],
13201320 // [method@Gtk.TextBuffer.move_mark].
1321-func (x *TextBuffer) ConnectMarkSet(cb func(TextBuffer, uintptr, uintptr)) {
1321+func (x *TextBuffer) ConnectMarkSet(cb func(TextBuffer, uintptr, uintptr)) uint32 {
13221322 fcb := func(clsPtr uintptr, LocationVarp uintptr, MarkVarp uintptr) {
13231323 fa := TextBuffer{}
13241324 fa.Ptr = clsPtr
@@ -1326,13 +1326,13 @@ func (x *TextBuffer) ConnectMarkSet(cb func(TextBuffer, uintptr, uintptr)) {
13261326 cb(fa, LocationVarp, MarkVarp)
13271327
13281328 }
1329- gobject.ObjectConnect(x.GoPointer(), "signal::mark-set", purego.NewCallback(fcb))
1329+ return gobject.SignalConnect(x.GoPointer(), "mark-set", purego.NewCallback(fcb))
13301330 }
13311331
13321332 // Emitted when the modified bit of a `GtkTextBuffer` flips.
13331333 //
13341334 // See also: [method@Gtk.TextBuffer.set_modified].
1335-func (x *TextBuffer) ConnectModifiedChanged(cb func(TextBuffer)) {
1335+func (x *TextBuffer) ConnectModifiedChanged(cb func(TextBuffer)) uint32 {
13361336 fcb := func(clsPtr uintptr) {
13371337 fa := TextBuffer{}
13381338 fa.Ptr = clsPtr
@@ -1340,7 +1340,7 @@ func (x *TextBuffer) ConnectModifiedChanged(cb func(TextBuffer)) {
13401340 cb(fa)
13411341
13421342 }
1343- gobject.ObjectConnect(x.GoPointer(), "signal::modified-changed", purego.NewCallback(fcb))
1343+ return gobject.SignalConnect(x.GoPointer(), "modified-changed", purego.NewCallback(fcb))
13441344 }
13451345
13461346 // Emitted after paste operation has been completed.
@@ -1348,7 +1348,7 @@ func (x *TextBuffer) ConnectModifiedChanged(cb func(TextBuffer)) {
13481348 // This is useful to properly scroll the view to the end
13491349 // of the pasted text. See [method@Gtk.TextBuffer.paste_clipboard]
13501350 // for more details.
1351-func (x *TextBuffer) ConnectPasteDone(cb func(TextBuffer, uintptr)) {
1351+func (x *TextBuffer) ConnectPasteDone(cb func(TextBuffer, uintptr)) uint32 {
13521352 fcb := func(clsPtr uintptr, ClipboardVarp uintptr) {
13531353 fa := TextBuffer{}
13541354 fa.Ptr = clsPtr
@@ -1356,12 +1356,12 @@ func (x *TextBuffer) ConnectPasteDone(cb func(TextBuffer, uintptr)) {
13561356 cb(fa, ClipboardVarp)
13571357
13581358 }
1359- gobject.ObjectConnect(x.GoPointer(), "signal::paste-done", purego.NewCallback(fcb))
1359+ return gobject.SignalConnect(x.GoPointer(), "paste-done", purego.NewCallback(fcb))
13601360 }
13611361
13621362 // Emitted when a request has been made to redo the
13631363 // previously undone operation.
1364-func (x *TextBuffer) ConnectRedo(cb func(TextBuffer)) {
1364+func (x *TextBuffer) ConnectRedo(cb func(TextBuffer)) uint32 {
13651365 fcb := func(clsPtr uintptr) {
13661366 fa := TextBuffer{}
13671367 fa.Ptr = clsPtr
@@ -1369,7 +1369,7 @@ func (x *TextBuffer) ConnectRedo(cb func(TextBuffer)) {
13691369 cb(fa)
13701370
13711371 }
1372- gobject.ObjectConnect(x.GoPointer(), "signal::redo", purego.NewCallback(fcb))
1372+ return gobject.SignalConnect(x.GoPointer(), "redo", purego.NewCallback(fcb))
13731373 }
13741374
13751375 // Emitted to remove all occurrences of @tag from a range
@@ -1382,7 +1382,7 @@ func (x *TextBuffer) ConnectRedo(cb func(TextBuffer)) {
13821382 // to revalidate them).
13831383 //
13841384 // See also: [method@Gtk.TextBuffer.remove_tag].
1385-func (x *TextBuffer) ConnectRemoveTag(cb func(TextBuffer, uintptr, uintptr, uintptr)) {
1385+func (x *TextBuffer) ConnectRemoveTag(cb func(TextBuffer, uintptr, uintptr, uintptr)) uint32 {
13861386 fcb := func(clsPtr uintptr, TagVarp uintptr, StartVarp uintptr, EndVarp uintptr) {
13871387 fa := TextBuffer{}
13881388 fa.Ptr = clsPtr
@@ -1390,13 +1390,13 @@ func (x *TextBuffer) ConnectRemoveTag(cb func(TextBuffer, uintptr, uintptr, uint
13901390 cb(fa, TagVarp, StartVarp, EndVarp)
13911391
13921392 }
1393- gobject.ObjectConnect(x.GoPointer(), "signal::remove-tag", purego.NewCallback(fcb))
1393+ return gobject.SignalConnect(x.GoPointer(), "remove-tag", purego.NewCallback(fcb))
13941394 }
13951395
13961396 // Emitted when a request has been made to undo the
13971397 // previous operation or set of operations that have
13981398 // been grouped together.
1399-func (x *TextBuffer) ConnectUndo(cb func(TextBuffer)) {
1399+func (x *TextBuffer) ConnectUndo(cb func(TextBuffer)) uint32 {
14001400 fcb := func(clsPtr uintptr) {
14011401 fa := TextBuffer{}
14021402 fa.Ptr = clsPtr
@@ -1404,7 +1404,7 @@ func (x *TextBuffer) ConnectUndo(cb func(TextBuffer)) {
14041404 cb(fa)
14051405
14061406 }
1407- gobject.ObjectConnect(x.GoPointer(), "signal::undo", purego.NewCallback(fcb))
1407+ return gobject.SignalConnect(x.GoPointer(), "undo", purego.NewCallback(fcb))
14081408 }
14091409
14101410 func init() {
M v4/gtk/gtktexttagtable.go +6 -6
@@ -137,7 +137,7 @@ func (c *TextTagTable) SetGoPointer(ptr uintptr) {
137137 }
138138
139139 // Emitted every time a new tag is added in the `GtkTextTagTable`.
140-func (x *TextTagTable) ConnectTagAdded(cb func(TextTagTable, uintptr)) {
140+func (x *TextTagTable) ConnectTagAdded(cb func(TextTagTable, uintptr)) uint32 {
141141 fcb := func(clsPtr uintptr, TagVarp uintptr) {
142142 fa := TextTagTable{}
143143 fa.Ptr = clsPtr
@@ -145,11 +145,11 @@ func (x *TextTagTable) ConnectTagAdded(cb func(TextTagTable, uintptr)) {
145145 cb(fa, TagVarp)
146146
147147 }
148- gobject.ObjectConnect(x.GoPointer(), "signal::tag-added", purego.NewCallback(fcb))
148+ return gobject.SignalConnect(x.GoPointer(), "tag-added", purego.NewCallback(fcb))
149149 }
150150
151151 // Emitted every time a tag in the `GtkTextTagTable` changes.
152-func (x *TextTagTable) ConnectTagChanged(cb func(TextTagTable, uintptr, bool)) {
152+func (x *TextTagTable) ConnectTagChanged(cb func(TextTagTable, uintptr, bool)) uint32 {
153153 fcb := func(clsPtr uintptr, TagVarp uintptr, SizeChangedVarp bool) {
154154 fa := TextTagTable{}
155155 fa.Ptr = clsPtr
@@ -157,14 +157,14 @@ func (x *TextTagTable) ConnectTagChanged(cb func(TextTagTable, uintptr, bool)) {
157157 cb(fa, TagVarp, SizeChangedVarp)
158158
159159 }
160- gobject.ObjectConnect(x.GoPointer(), "signal::tag-changed", purego.NewCallback(fcb))
160+ return gobject.SignalConnect(x.GoPointer(), "tag-changed", purego.NewCallback(fcb))
161161 }
162162
163163 // Emitted every time a tag is removed from the `GtkTextTagTable`.
164164 //
165165 // The @tag is still valid by the time the signal is emitted, but
166166 // it is not associated with a tag table any more.
167-func (x *TextTagTable) ConnectTagRemoved(cb func(TextTagTable, uintptr)) {
167+func (x *TextTagTable) ConnectTagRemoved(cb func(TextTagTable, uintptr)) uint32 {
168168 fcb := func(clsPtr uintptr, TagVarp uintptr) {
169169 fa := TextTagTable{}
170170 fa.Ptr = clsPtr
@@ -172,7 +172,7 @@ func (x *TextTagTable) ConnectTagRemoved(cb func(TextTagTable, uintptr)) {
172172 cb(fa, TagVarp)
173173
174174 }
175- gobject.ObjectConnect(x.GoPointer(), "signal::tag-removed", purego.NewCallback(fcb))
175+ return gobject.SignalConnect(x.GoPointer(), "tag-removed", purego.NewCallback(fcb))
176176 }
177177
178178 // Gets the ID of the @buildable object.
M v4/gtk/gtktextview.go +30 -30
@@ -1121,7 +1121,7 @@ func (c *TextView) SetGoPointer(ptr uintptr) {
11211121 //
11221122 // The default bindings for this signal are
11231123 // <kbd>Backspace</kbd> and <kbd>Shift</kbd>-<kbd>Backspace</kbd>.
1124-func (x *TextView) ConnectBackspace(cb func(TextView)) {
1124+func (x *TextView) ConnectBackspace(cb func(TextView)) uint32 {
11251125 fcb := func(clsPtr uintptr) {
11261126 fa := TextView{}
11271127 fa.Ptr = clsPtr
@@ -1129,7 +1129,7 @@ func (x *TextView) ConnectBackspace(cb func(TextView)) {
11291129 cb(fa)
11301130
11311131 }
1132- gobject.ObjectConnect(x.GoPointer(), "signal::backspace", purego.NewCallback(fcb))
1132+ return gobject.SignalConnect(x.GoPointer(), "backspace", purego.NewCallback(fcb))
11331133 }
11341134
11351135 // Gets emitted to copy the selection to the clipboard.
@@ -1139,7 +1139,7 @@ func (x *TextView) ConnectBackspace(cb func(TextView)) {
11391139 // The default bindings for this signal are
11401140 // <kbd>Ctrl</kbd>-<kbd>c</kbd> and
11411141 // <kbd>Ctrl</kbd>-<kbd>Insert</kbd>.
1142-func (x *TextView) ConnectCopyClipboard(cb func(TextView)) {
1142+func (x *TextView) ConnectCopyClipboard(cb func(TextView)) uint32 {
11431143 fcb := func(clsPtr uintptr) {
11441144 fa := TextView{}
11451145 fa.Ptr = clsPtr
@@ -1147,7 +1147,7 @@ func (x *TextView) ConnectCopyClipboard(cb func(TextView)) {
11471147 cb(fa)
11481148
11491149 }
1150- gobject.ObjectConnect(x.GoPointer(), "signal::copy-clipboard", purego.NewCallback(fcb))
1150+ return gobject.SignalConnect(x.GoPointer(), "copy-clipboard", purego.NewCallback(fcb))
11511151 }
11521152
11531153 // Gets emitted to cut the selection to the clipboard.
@@ -1157,7 +1157,7 @@ func (x *TextView) ConnectCopyClipboard(cb func(TextView)) {
11571157 // The default bindings for this signal are
11581158 // <kbd>Ctrl</kbd>-<kbd>x</kbd> and
11591159 // <kbd>Shift</kbd>-<kbd>Delete</kbd>.
1160-func (x *TextView) ConnectCutClipboard(cb func(TextView)) {
1160+func (x *TextView) ConnectCutClipboard(cb func(TextView)) uint32 {
11611161 fcb := func(clsPtr uintptr) {
11621162 fa := TextView{}
11631163 fa.Ptr = clsPtr
@@ -1165,7 +1165,7 @@ func (x *TextView) ConnectCutClipboard(cb func(TextView)) {
11651165 cb(fa)
11661166
11671167 }
1168- gobject.ObjectConnect(x.GoPointer(), "signal::cut-clipboard", purego.NewCallback(fcb))
1168+ return gobject.SignalConnect(x.GoPointer(), "cut-clipboard", purego.NewCallback(fcb))
11691169 }
11701170
11711171 // Gets emitted when the user initiates a text deletion.
@@ -1180,7 +1180,7 @@ func (x *TextView) ConnectCutClipboard(cb func(TextView)) {
11801180 // deleting a character, <kbd>Ctrl</kbd>-<kbd>Delete</kbd> for
11811181 // deleting a word and <kbd>Ctrl</kbd>-<kbd>Backspace</kbd> for
11821182 // deleting a word backwards.
1183-func (x *TextView) ConnectDeleteFromCursor(cb func(TextView, DeleteType, int)) {
1183+func (x *TextView) ConnectDeleteFromCursor(cb func(TextView, DeleteType, int)) uint32 {
11841184 fcb := func(clsPtr uintptr, TypeVarp DeleteType, CountVarp int) {
11851185 fa := TextView{}
11861186 fa.Ptr = clsPtr
@@ -1188,11 +1188,11 @@ func (x *TextView) ConnectDeleteFromCursor(cb func(TextView, DeleteType, int)) {
11881188 cb(fa, TypeVarp, CountVarp)
11891189
11901190 }
1191- gobject.ObjectConnect(x.GoPointer(), "signal::delete-from-cursor", purego.NewCallback(fcb))
1191+ return gobject.SignalConnect(x.GoPointer(), "delete-from-cursor", purego.NewCallback(fcb))
11921192 }
11931193
11941194 // Emitted when the selection needs to be extended at @location.
1195-func (x *TextView) ConnectExtendSelection(cb func(TextView, TextExtendSelection, uintptr, uintptr, uintptr) bool) {
1195+func (x *TextView) ConnectExtendSelection(cb func(TextView, TextExtendSelection, uintptr, uintptr, uintptr) bool) uint32 {
11961196 fcb := func(clsPtr uintptr, GranularityVarp TextExtendSelection, LocationVarp uintptr, StartVarp uintptr, EndVarp uintptr) bool {
11971197 fa := TextView{}
11981198 fa.Ptr = clsPtr
@@ -1200,7 +1200,7 @@ func (x *TextView) ConnectExtendSelection(cb func(TextView, TextExtendSelection,
12001200 return cb(fa, GranularityVarp, LocationVarp, StartVarp, EndVarp)
12011201
12021202 }
1203- gobject.ObjectConnect(x.GoPointer(), "signal::extend-selection", purego.NewCallback(fcb))
1203+ return gobject.SignalConnect(x.GoPointer(), "extend-selection", purego.NewCallback(fcb))
12041204 }
12051205
12061206 // Gets emitted when the user initiates the insertion of a
@@ -1209,7 +1209,7 @@ func (x *TextView) ConnectExtendSelection(cb func(TextView, TextExtendSelection,
12091209 // The ::insert-at-cursor signal is a [keybinding signal](class.SignalAction.html).
12101210 //
12111211 // This signal has no default bindings.
1212-func (x *TextView) ConnectInsertAtCursor(cb func(TextView, string)) {
1212+func (x *TextView) ConnectInsertAtCursor(cb func(TextView, string)) uint32 {
12131213 fcb := func(clsPtr uintptr, StringVarp string) {
12141214 fa := TextView{}
12151215 fa.Ptr = clsPtr
@@ -1217,7 +1217,7 @@ func (x *TextView) ConnectInsertAtCursor(cb func(TextView, string)) {
12171217 cb(fa, StringVarp)
12181218
12191219 }
1220- gobject.ObjectConnect(x.GoPointer(), "signal::insert-at-cursor", purego.NewCallback(fcb))
1220+ return gobject.SignalConnect(x.GoPointer(), "insert-at-cursor", purego.NewCallback(fcb))
12211221 }
12221222
12231223 // Gets emitted to present the Emoji chooser for the @text_view.
@@ -1227,7 +1227,7 @@ func (x *TextView) ConnectInsertAtCursor(cb func(TextView, string)) {
12271227 // The default bindings for this signal are
12281228 // <kbd>Ctrl</kbd>-<kbd>.</kbd> and
12291229 // <kbd>Ctrl</kbd>-<kbd>;</kbd>
1230-func (x *TextView) ConnectInsertEmoji(cb func(TextView)) {
1230+func (x *TextView) ConnectInsertEmoji(cb func(TextView)) uint32 {
12311231 fcb := func(clsPtr uintptr) {
12321232 fa := TextView{}
12331233 fa.Ptr = clsPtr
@@ -1235,7 +1235,7 @@ func (x *TextView) ConnectInsertEmoji(cb func(TextView)) {
12351235 cb(fa)
12361236
12371237 }
1238- gobject.ObjectConnect(x.GoPointer(), "signal::insert-emoji", purego.NewCallback(fcb))
1238+ return gobject.SignalConnect(x.GoPointer(), "insert-emoji", purego.NewCallback(fcb))
12391239 }
12401240
12411241 // Gets emitted when the user initiates a cursor movement.
@@ -1260,7 +1260,7 @@ func (x *TextView) ConnectInsertEmoji(cb func(TextView)) {
12601260 // - <kbd>PgUp</kbd>, <kbd>PgDn</kbd> move vertically by pages
12611261 // - <kbd>Ctrl</kbd>-<kbd>PgUp</kbd>, <kbd>Ctrl</kbd>-<kbd>PgDn</kbd>
12621262 // move horizontally by pages
1263-func (x *TextView) ConnectMoveCursor(cb func(TextView, MovementStep, int, bool)) {
1263+func (x *TextView) ConnectMoveCursor(cb func(TextView, MovementStep, int, bool)) uint32 {
12641264 fcb := func(clsPtr uintptr, StepVarp MovementStep, CountVarp int, ExtendSelectionVarp bool) {
12651265 fa := TextView{}
12661266 fa.Ptr = clsPtr
@@ -1268,7 +1268,7 @@ func (x *TextView) ConnectMoveCursor(cb func(TextView, MovementStep, int, bool))
12681268 cb(fa, StepVarp, CountVarp, ExtendSelectionVarp)
12691269
12701270 }
1271- gobject.ObjectConnect(x.GoPointer(), "signal::move-cursor", purego.NewCallback(fcb))
1271+ return gobject.SignalConnect(x.GoPointer(), "move-cursor", purego.NewCallback(fcb))
12721272 }
12731273
12741274 // Gets emitted to move the viewport.
@@ -1279,7 +1279,7 @@ func (x *TextView) ConnectMoveCursor(cb func(TextView, MovementStep, int, bool))
12791279 // window.
12801280 //
12811281 // There are no default bindings for this signal.
1282-func (x *TextView) ConnectMoveViewport(cb func(TextView, ScrollStep, int)) {
1282+func (x *TextView) ConnectMoveViewport(cb func(TextView, ScrollStep, int)) uint32 {
12831283 fcb := func(clsPtr uintptr, StepVarp ScrollStep, CountVarp int) {
12841284 fa := TextView{}
12851285 fa.Ptr = clsPtr
@@ -1287,7 +1287,7 @@ func (x *TextView) ConnectMoveViewport(cb func(TextView, ScrollStep, int)) {
12871287 cb(fa, StepVarp, CountVarp)
12881288
12891289 }
1290- gobject.ObjectConnect(x.GoPointer(), "signal::move-viewport", purego.NewCallback(fcb))
1290+ return gobject.SignalConnect(x.GoPointer(), "move-viewport", purego.NewCallback(fcb))
12911291 }
12921292
12931293 // Gets emitted to paste the contents of the clipboard
@@ -1298,7 +1298,7 @@ func (x *TextView) ConnectMoveViewport(cb func(TextView, ScrollStep, int)) {
12981298 // The default bindings for this signal are
12991299 // <kbd>Ctrl</kbd>-<kbd>v</kbd> and
13001300 // <kbd>Shift</kbd>-<kbd>Insert</kbd>.
1301-func (x *TextView) ConnectPasteClipboard(cb func(TextView)) {
1301+func (x *TextView) ConnectPasteClipboard(cb func(TextView)) uint32 {
13021302 fcb := func(clsPtr uintptr) {
13031303 fa := TextView{}
13041304 fa.Ptr = clsPtr
@@ -1306,7 +1306,7 @@ func (x *TextView) ConnectPasteClipboard(cb func(TextView)) {
13061306 cb(fa)
13071307
13081308 }
1309- gobject.ObjectConnect(x.GoPointer(), "signal::paste-clipboard", purego.NewCallback(fcb))
1309+ return gobject.SignalConnect(x.GoPointer(), "paste-clipboard", purego.NewCallback(fcb))
13101310 }
13111311
13121312 // Emitted when preedit text of the active IM changes.
@@ -1317,7 +1317,7 @@ func (x *TextView) ConnectPasteClipboard(cb func(TextView)) {
13171317 //
13181318 // This signal is only emitted if the text at the given position
13191319 // is actually editable.
1320-func (x *TextView) ConnectPreeditChanged(cb func(TextView, string)) {
1320+func (x *TextView) ConnectPreeditChanged(cb func(TextView, string)) uint32 {
13211321 fcb := func(clsPtr uintptr, PreeditVarp string) {
13221322 fa := TextView{}
13231323 fa.Ptr = clsPtr
@@ -1325,7 +1325,7 @@ func (x *TextView) ConnectPreeditChanged(cb func(TextView, string)) {
13251325 cb(fa, PreeditVarp)
13261326
13271327 }
1328- gobject.ObjectConnect(x.GoPointer(), "signal::preedit-changed", purego.NewCallback(fcb))
1328+ return gobject.SignalConnect(x.GoPointer(), "preedit-changed", purego.NewCallback(fcb))
13291329 }
13301330
13311331 // Gets emitted to select or unselect the complete contents of the text view.
@@ -1337,7 +1337,7 @@ func (x *TextView) ConnectPreeditChanged(cb func(TextView, string)) {
13371337 // <kbd>Ctrl</kbd>-<kbd>/</kbd> for selecting and
13381338 // <kbd>Shift</kbd>-<kbd>Ctrl</kbd>-<kbd>a</kbd> and
13391339 // <kbd>Ctrl</kbd>-<kbd>\</kbd> for unselecting.
1340-func (x *TextView) ConnectSelectAll(cb func(TextView, bool)) {
1340+func (x *TextView) ConnectSelectAll(cb func(TextView, bool)) uint32 {
13411341 fcb := func(clsPtr uintptr, SelectVarp bool) {
13421342 fa := TextView{}
13431343 fa.Ptr = clsPtr
@@ -1345,7 +1345,7 @@ func (x *TextView) ConnectSelectAll(cb func(TextView, bool)) {
13451345 cb(fa, SelectVarp)
13461346
13471347 }
1348- gobject.ObjectConnect(x.GoPointer(), "signal::select-all", purego.NewCallback(fcb))
1348+ return gobject.SignalConnect(x.GoPointer(), "select-all", purego.NewCallback(fcb))
13491349 }
13501350
13511351 // Gets emitted when the user initiates settings the "anchor" mark.
@@ -1356,7 +1356,7 @@ func (x *TextView) ConnectSelectAll(cb func(TextView, bool)) {
13561356 // "insert" mark.
13571357 //
13581358 // This signal has no default bindings.
1359-func (x *TextView) ConnectSetAnchor(cb func(TextView)) {
1359+func (x *TextView) ConnectSetAnchor(cb func(TextView)) uint32 {
13601360 fcb := func(clsPtr uintptr) {
13611361 fa := TextView{}
13621362 fa.Ptr = clsPtr
@@ -1364,7 +1364,7 @@ func (x *TextView) ConnectSetAnchor(cb func(TextView)) {
13641364 cb(fa)
13651365
13661366 }
1367- gobject.ObjectConnect(x.GoPointer(), "signal::set-anchor", purego.NewCallback(fcb))
1367+ return gobject.SignalConnect(x.GoPointer(), "set-anchor", purego.NewCallback(fcb))
13681368 }
13691369
13701370 // Gets emitted to toggle the `cursor-visible` property.
@@ -1373,7 +1373,7 @@ func (x *TextView) ConnectSetAnchor(cb func(TextView)) {
13731373 // [keybinding signal](class.SignalAction.html).
13741374 //
13751375 // The default binding for this signal is <kbd>F7</kbd>.
1376-func (x *TextView) ConnectToggleCursorVisible(cb func(TextView)) {
1376+func (x *TextView) ConnectToggleCursorVisible(cb func(TextView)) uint32 {
13771377 fcb := func(clsPtr uintptr) {
13781378 fa := TextView{}
13791379 fa.Ptr = clsPtr
@@ -1381,7 +1381,7 @@ func (x *TextView) ConnectToggleCursorVisible(cb func(TextView)) {
13811381 cb(fa)
13821382
13831383 }
1384- gobject.ObjectConnect(x.GoPointer(), "signal::toggle-cursor-visible", purego.NewCallback(fcb))
1384+ return gobject.SignalConnect(x.GoPointer(), "toggle-cursor-visible", purego.NewCallback(fcb))
13851385 }
13861386
13871387 // Gets emitted to toggle the overwrite mode of the text view.
@@ -1389,7 +1389,7 @@ func (x *TextView) ConnectToggleCursorVisible(cb func(TextView)) {
13891389 // The ::toggle-overwrite signal is a [keybinding signal](class.SignalAction.html).
13901390 //
13911391 // The default binding for this signal is <kbd>Insert</kbd>.
1392-func (x *TextView) ConnectToggleOverwrite(cb func(TextView)) {
1392+func (x *TextView) ConnectToggleOverwrite(cb func(TextView)) uint32 {
13931393 fcb := func(clsPtr uintptr) {
13941394 fa := TextView{}
13951395 fa.Ptr = clsPtr
@@ -1397,7 +1397,7 @@ func (x *TextView) ConnectToggleOverwrite(cb func(TextView)) {
13971397 cb(fa)
13981398
13991399 }
1400- gobject.ObjectConnect(x.GoPointer(), "signal::toggle-overwrite", purego.NewCallback(fcb))
1400+ return gobject.SignalConnect(x.GoPointer(), "toggle-overwrite", purego.NewCallback(fcb))
14011401 }
14021402
14031403 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtktogglebutton.go +2 -2
@@ -221,7 +221,7 @@ func (c *ToggleButton) SetGoPointer(ptr uintptr) {
221221 }
222222
223223 // Emitted whenever the `GtkToggleButton`'s state is changed.
224-func (x *ToggleButton) ConnectToggled(cb func(ToggleButton)) {
224+func (x *ToggleButton) ConnectToggled(cb func(ToggleButton)) uint32 {
225225 fcb := func(clsPtr uintptr) {
226226 fa := ToggleButton{}
227227 fa.Ptr = clsPtr
@@ -229,7 +229,7 @@ func (x *ToggleButton) ConnectToggled(cb func(ToggleButton)) {
229229 cb(fa)
230230
231231 }
232- gobject.ObjectConnect(x.GoPointer(), "signal::toggled", purego.NewCallback(fcb))
232+ return gobject.SignalConnect(x.GoPointer(), "toggled", purego.NewCallback(fcb))
233233 }
234234
235235 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtktreeselection.go +2 -2
@@ -281,7 +281,7 @@ func (c *TreeSelection) SetGoPointer(ptr uintptr) {
281281 // this signal is mostly a hint. It may only be emitted once when a range
282282 // of rows are selected, and it may occasionally be emitted when nothing
283283 // has happened.
284-func (x *TreeSelection) ConnectChanged(cb func(TreeSelection)) {
284+func (x *TreeSelection) ConnectChanged(cb func(TreeSelection)) uint32 {
285285 fcb := func(clsPtr uintptr) {
286286 fa := TreeSelection{}
287287 fa.Ptr = clsPtr
@@ -289,7 +289,7 @@ func (x *TreeSelection) ConnectChanged(cb func(TreeSelection)) {
289289 cb(fa)
290290
291291 }
292- gobject.ObjectConnect(x.GoPointer(), "signal::changed", purego.NewCallback(fcb))
292+ return gobject.SignalConnect(x.GoPointer(), "changed", purego.NewCallback(fcb))
293293 }
294294
295295 func init() {
M v4/gtk/gtktreeview.go +30 -30
@@ -1294,7 +1294,7 @@ func (c *TreeView) SetGoPointer(ptr uintptr) {
12941294 }
12951295
12961296 // The number of columns of the treeview has changed.
1297-func (x *TreeView) ConnectColumnsChanged(cb func(TreeView)) {
1297+func (x *TreeView) ConnectColumnsChanged(cb func(TreeView)) uint32 {
12981298 fcb := func(clsPtr uintptr) {
12991299 fa := TreeView{}
13001300 fa.Ptr = clsPtr
@@ -1302,11 +1302,11 @@ func (x *TreeView) ConnectColumnsChanged(cb func(TreeView)) {
13021302 cb(fa)
13031303
13041304 }
1305- gobject.ObjectConnect(x.GoPointer(), "signal::columns-changed", purego.NewCallback(fcb))
1305+ return gobject.SignalConnect(x.GoPointer(), "columns-changed", purego.NewCallback(fcb))
13061306 }
13071307
13081308 // The position of the cursor (focused cell) has changed.
1309-func (x *TreeView) ConnectCursorChanged(cb func(TreeView)) {
1309+func (x *TreeView) ConnectCursorChanged(cb func(TreeView)) uint32 {
13101310 fcb := func(clsPtr uintptr) {
13111311 fa := TreeView{}
13121312 fa.Ptr = clsPtr
@@ -1314,10 +1314,10 @@ func (x *TreeView) ConnectCursorChanged(cb func(TreeView)) {
13141314 cb(fa)
13151315
13161316 }
1317- gobject.ObjectConnect(x.GoPointer(), "signal::cursor-changed", purego.NewCallback(fcb))
1317+ return gobject.SignalConnect(x.GoPointer(), "cursor-changed", purego.NewCallback(fcb))
13181318 }
13191319
1320-func (x *TreeView) ConnectExpandCollapseCursorRow(cb func(TreeView, bool, bool, bool) bool) {
1320+func (x *TreeView) ConnectExpandCollapseCursorRow(cb func(TreeView, bool, bool, bool) bool) uint32 {
13211321 fcb := func(clsPtr uintptr, ObjectVarp bool, P0Varp bool, P1Varp bool) bool {
13221322 fa := TreeView{}
13231323 fa.Ptr = clsPtr
@@ -1325,7 +1325,7 @@ func (x *TreeView) ConnectExpandCollapseCursorRow(cb func(TreeView, bool, bool,
13251325 return cb(fa, ObjectVarp, P0Varp, P1Varp)
13261326
13271327 }
1328- gobject.ObjectConnect(x.GoPointer(), "signal::expand-collapse-cursor-row", purego.NewCallback(fcb))
1328+ return gobject.SignalConnect(x.GoPointer(), "expand-collapse-cursor-row", purego.NewCallback(fcb))
13291329 }
13301330
13311331 // The `GtkTreeView`::move-cursor signal is a [keybinding
@@ -1337,7 +1337,7 @@ func (x *TreeView) ConnectExpandCollapseCursorRow(cb func(TreeView, bool, bool,
13371337 // programmatically. In contrast to gtk_tree_view_set_cursor() and
13381338 // gtk_tree_view_set_cursor_on_cell() when moving horizontally
13391339 // `GtkTreeView`::move-cursor does not reset the current selection.
1340-func (x *TreeView) ConnectMoveCursor(cb func(TreeView, MovementStep, int, bool, bool) bool) {
1340+func (x *TreeView) ConnectMoveCursor(cb func(TreeView, MovementStep, int, bool, bool) bool) uint32 {
13411341 fcb := func(clsPtr uintptr, StepVarp MovementStep, DirectionVarp int, ExtendVarp bool, ModifyVarp bool) bool {
13421342 fa := TreeView{}
13431343 fa.Ptr = clsPtr
@@ -1345,7 +1345,7 @@ func (x *TreeView) ConnectMoveCursor(cb func(TreeView, MovementStep, int, bool,
13451345 return cb(fa, StepVarp, DirectionVarp, ExtendVarp, ModifyVarp)
13461346
13471347 }
1348- gobject.ObjectConnect(x.GoPointer(), "signal::move-cursor", purego.NewCallback(fcb))
1348+ return gobject.SignalConnect(x.GoPointer(), "move-cursor", purego.NewCallback(fcb))
13491349 }
13501350
13511351 // The "row-activated" signal is emitted when the method
@@ -1362,7 +1362,7 @@ func (x *TreeView) ConnectMoveCursor(cb func(TreeView, MovementStep, int, bool,
13621362 // For selection handling refer to the
13631363 // [tree widget conceptual overview](section-tree-widget.html)
13641364 // as well as `GtkTreeSelection`.
1365-func (x *TreeView) ConnectRowActivated(cb func(TreeView, uintptr, uintptr)) {
1365+func (x *TreeView) ConnectRowActivated(cb func(TreeView, uintptr, uintptr)) uint32 {
13661366 fcb := func(clsPtr uintptr, PathVarp uintptr, ColumnVarp uintptr) {
13671367 fa := TreeView{}
13681368 fa.Ptr = clsPtr
@@ -1370,11 +1370,11 @@ func (x *TreeView) ConnectRowActivated(cb func(TreeView, uintptr, uintptr)) {
13701370 cb(fa, PathVarp, ColumnVarp)
13711371
13721372 }
1373- gobject.ObjectConnect(x.GoPointer(), "signal::row-activated", purego.NewCallback(fcb))
1373+ return gobject.SignalConnect(x.GoPointer(), "row-activated", purego.NewCallback(fcb))
13741374 }
13751375
13761376 // The given row has been collapsed (child nodes are hidden).
1377-func (x *TreeView) ConnectRowCollapsed(cb func(TreeView, uintptr, uintptr)) {
1377+func (x *TreeView) ConnectRowCollapsed(cb func(TreeView, uintptr, uintptr)) uint32 {
13781378 fcb := func(clsPtr uintptr, IterVarp uintptr, PathVarp uintptr) {
13791379 fa := TreeView{}
13801380 fa.Ptr = clsPtr
@@ -1382,11 +1382,11 @@ func (x *TreeView) ConnectRowCollapsed(cb func(TreeView, uintptr, uintptr)) {
13821382 cb(fa, IterVarp, PathVarp)
13831383
13841384 }
1385- gobject.ObjectConnect(x.GoPointer(), "signal::row-collapsed", purego.NewCallback(fcb))
1385+ return gobject.SignalConnect(x.GoPointer(), "row-collapsed", purego.NewCallback(fcb))
13861386 }
13871387
13881388 // The given row has been expanded (child nodes are shown).
1389-func (x *TreeView) ConnectRowExpanded(cb func(TreeView, uintptr, uintptr)) {
1389+func (x *TreeView) ConnectRowExpanded(cb func(TreeView, uintptr, uintptr)) uint32 {
13901390 fcb := func(clsPtr uintptr, IterVarp uintptr, PathVarp uintptr) {
13911391 fa := TreeView{}
13921392 fa.Ptr = clsPtr
@@ -1394,10 +1394,10 @@ func (x *TreeView) ConnectRowExpanded(cb func(TreeView, uintptr, uintptr)) {
13941394 cb(fa, IterVarp, PathVarp)
13951395
13961396 }
1397- gobject.ObjectConnect(x.GoPointer(), "signal::row-expanded", purego.NewCallback(fcb))
1397+ return gobject.SignalConnect(x.GoPointer(), "row-expanded", purego.NewCallback(fcb))
13981398 }
13991399
1400-func (x *TreeView) ConnectSelectAll(cb func(TreeView) bool) {
1400+func (x *TreeView) ConnectSelectAll(cb func(TreeView) bool) uint32 {
14011401 fcb := func(clsPtr uintptr) bool {
14021402 fa := TreeView{}
14031403 fa.Ptr = clsPtr
@@ -1405,10 +1405,10 @@ func (x *TreeView) ConnectSelectAll(cb func(TreeView) bool) {
14051405 return cb(fa)
14061406
14071407 }
1408- gobject.ObjectConnect(x.GoPointer(), "signal::select-all", purego.NewCallback(fcb))
1408+ return gobject.SignalConnect(x.GoPointer(), "select-all", purego.NewCallback(fcb))
14091409 }
14101410
1411-func (x *TreeView) ConnectSelectCursorParent(cb func(TreeView) bool) {
1411+func (x *TreeView) ConnectSelectCursorParent(cb func(TreeView) bool) uint32 {
14121412 fcb := func(clsPtr uintptr) bool {
14131413 fa := TreeView{}
14141414 fa.Ptr = clsPtr
@@ -1416,10 +1416,10 @@ func (x *TreeView) ConnectSelectCursorParent(cb func(TreeView) bool) {
14161416 return cb(fa)
14171417
14181418 }
1419- gobject.ObjectConnect(x.GoPointer(), "signal::select-cursor-parent", purego.NewCallback(fcb))
1419+ return gobject.SignalConnect(x.GoPointer(), "select-cursor-parent", purego.NewCallback(fcb))
14201420 }
14211421
1422-func (x *TreeView) ConnectSelectCursorRow(cb func(TreeView, bool) bool) {
1422+func (x *TreeView) ConnectSelectCursorRow(cb func(TreeView, bool) bool) uint32 {
14231423 fcb := func(clsPtr uintptr, ObjectVarp bool) bool {
14241424 fa := TreeView{}
14251425 fa.Ptr = clsPtr
@@ -1427,10 +1427,10 @@ func (x *TreeView) ConnectSelectCursorRow(cb func(TreeView, bool) bool) {
14271427 return cb(fa, ObjectVarp)
14281428
14291429 }
1430- gobject.ObjectConnect(x.GoPointer(), "signal::select-cursor-row", purego.NewCallback(fcb))
1430+ return gobject.SignalConnect(x.GoPointer(), "select-cursor-row", purego.NewCallback(fcb))
14311431 }
14321432
1433-func (x *TreeView) ConnectStartInteractiveSearch(cb func(TreeView) bool) {
1433+func (x *TreeView) ConnectStartInteractiveSearch(cb func(TreeView) bool) uint32 {
14341434 fcb := func(clsPtr uintptr) bool {
14351435 fa := TreeView{}
14361436 fa.Ptr = clsPtr
@@ -1438,12 +1438,12 @@ func (x *TreeView) ConnectStartInteractiveSearch(cb func(TreeView) bool) {
14381438 return cb(fa)
14391439
14401440 }
1441- gobject.ObjectConnect(x.GoPointer(), "signal::start-interactive-search", purego.NewCallback(fcb))
1441+ return gobject.SignalConnect(x.GoPointer(), "start-interactive-search", purego.NewCallback(fcb))
14421442 }
14431443
14441444 // The given row is about to be collapsed (hide its children nodes). Use this
14451445 // signal if you need to control the collapsibility of individual rows.
1446-func (x *TreeView) ConnectTestCollapseRow(cb func(TreeView, uintptr, uintptr) bool) {
1446+func (x *TreeView) ConnectTestCollapseRow(cb func(TreeView, uintptr, uintptr) bool) uint32 {
14471447 fcb := func(clsPtr uintptr, IterVarp uintptr, PathVarp uintptr) bool {
14481448 fa := TreeView{}
14491449 fa.Ptr = clsPtr
@@ -1451,12 +1451,12 @@ func (x *TreeView) ConnectTestCollapseRow(cb func(TreeView, uintptr, uintptr) bo
14511451 return cb(fa, IterVarp, PathVarp)
14521452
14531453 }
1454- gobject.ObjectConnect(x.GoPointer(), "signal::test-collapse-row", purego.NewCallback(fcb))
1454+ return gobject.SignalConnect(x.GoPointer(), "test-collapse-row", purego.NewCallback(fcb))
14551455 }
14561456
14571457 // The given row is about to be expanded (show its children nodes). Use this
14581458 // signal if you need to control the expandability of individual rows.
1459-func (x *TreeView) ConnectTestExpandRow(cb func(TreeView, uintptr, uintptr) bool) {
1459+func (x *TreeView) ConnectTestExpandRow(cb func(TreeView, uintptr, uintptr) bool) uint32 {
14601460 fcb := func(clsPtr uintptr, IterVarp uintptr, PathVarp uintptr) bool {
14611461 fa := TreeView{}
14621462 fa.Ptr = clsPtr
@@ -1464,10 +1464,10 @@ func (x *TreeView) ConnectTestExpandRow(cb func(TreeView, uintptr, uintptr) bool
14641464 return cb(fa, IterVarp, PathVarp)
14651465
14661466 }
1467- gobject.ObjectConnect(x.GoPointer(), "signal::test-expand-row", purego.NewCallback(fcb))
1467+ return gobject.SignalConnect(x.GoPointer(), "test-expand-row", purego.NewCallback(fcb))
14681468 }
14691469
1470-func (x *TreeView) ConnectToggleCursorRow(cb func(TreeView) bool) {
1470+func (x *TreeView) ConnectToggleCursorRow(cb func(TreeView) bool) uint32 {
14711471 fcb := func(clsPtr uintptr) bool {
14721472 fa := TreeView{}
14731473 fa.Ptr = clsPtr
@@ -1475,10 +1475,10 @@ func (x *TreeView) ConnectToggleCursorRow(cb func(TreeView) bool) {
14751475 return cb(fa)
14761476
14771477 }
1478- gobject.ObjectConnect(x.GoPointer(), "signal::toggle-cursor-row", purego.NewCallback(fcb))
1478+ return gobject.SignalConnect(x.GoPointer(), "toggle-cursor-row", purego.NewCallback(fcb))
14791479 }
14801480
1481-func (x *TreeView) ConnectUnselectAll(cb func(TreeView) bool) {
1481+func (x *TreeView) ConnectUnselectAll(cb func(TreeView) bool) uint32 {
14821482 fcb := func(clsPtr uintptr) bool {
14831483 fa := TreeView{}
14841484 fa.Ptr = clsPtr
@@ -1486,7 +1486,7 @@ func (x *TreeView) ConnectUnselectAll(cb func(TreeView) bool) {
14861486 return cb(fa)
14871487
14881488 }
1489- gobject.ObjectConnect(x.GoPointer(), "signal::unselect-all", purego.NewCallback(fcb))
1489+ return gobject.SignalConnect(x.GoPointer(), "unselect-all", purego.NewCallback(fcb))
14901490 }
14911491
14921492 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtktreeviewcolumn.go +2 -2
@@ -699,7 +699,7 @@ func (c *TreeViewColumn) SetGoPointer(ptr uintptr) {
699699 }
700700
701701 // Emitted when the column's header has been clicked.
702-func (x *TreeViewColumn) ConnectClicked(cb func(TreeViewColumn)) {
702+func (x *TreeViewColumn) ConnectClicked(cb func(TreeViewColumn)) uint32 {
703703 fcb := func(clsPtr uintptr) {
704704 fa := TreeViewColumn{}
705705 fa.Ptr = clsPtr
@@ -707,7 +707,7 @@ func (x *TreeViewColumn) ConnectClicked(cb func(TreeViewColumn)) {
707707 cb(fa)
708708
709709 }
710- gobject.ObjectConnect(x.GoPointer(), "signal::clicked", purego.NewCallback(fcb))
710+ return gobject.SignalConnect(x.GoPointer(), "clicked", purego.NewCallback(fcb))
711711 }
712712
713713 // Gets the ID of the @buildable object.
M v4/gtk/gtkwidget.go +26 -26
@@ -3075,7 +3075,7 @@ func (c *Widget) SetGoPointer(ptr uintptr) {
30753075 // May result in finalization of the widget if all references are released.
30763076 //
30773077 // This signal is not suitable for saving widget state.
3078-func (x *Widget) ConnectDestroy(cb func(Widget)) {
3078+func (x *Widget) ConnectDestroy(cb func(Widget)) uint32 {
30793079 fcb := func(clsPtr uintptr) {
30803080 fa := Widget{}
30813081 fa.Ptr = clsPtr
@@ -3083,11 +3083,11 @@ func (x *Widget) ConnectDestroy(cb func(Widget)) {
30833083 cb(fa)
30843084
30853085 }
3086- gobject.ObjectConnect(x.GoPointer(), "signal::destroy", purego.NewCallback(fcb))
3086+ return gobject.SignalConnect(x.GoPointer(), "destroy", purego.NewCallback(fcb))
30873087 }
30883088
30893089 // Emitted when the text direction of a widget changes.
3090-func (x *Widget) ConnectDirectionChanged(cb func(Widget, TextDirection)) {
3090+func (x *Widget) ConnectDirectionChanged(cb func(Widget, TextDirection)) uint32 {
30913091 fcb := func(clsPtr uintptr, PreviousDirectionVarp TextDirection) {
30923092 fa := Widget{}
30933093 fa.Ptr = clsPtr
@@ -3095,11 +3095,11 @@ func (x *Widget) ConnectDirectionChanged(cb func(Widget, TextDirection)) {
30953095 cb(fa, PreviousDirectionVarp)
30963096
30973097 }
3098- gobject.ObjectConnect(x.GoPointer(), "signal::direction-changed", purego.NewCallback(fcb))
3098+ return gobject.SignalConnect(x.GoPointer(), "direction-changed", purego.NewCallback(fcb))
30993099 }
31003100
31013101 // Emitted when @widget is hidden.
3102-func (x *Widget) ConnectHide(cb func(Widget)) {
3102+func (x *Widget) ConnectHide(cb func(Widget)) uint32 {
31033103 fcb := func(clsPtr uintptr) {
31043104 fa := Widget{}
31053105 fa.Ptr = clsPtr
@@ -3107,13 +3107,13 @@ func (x *Widget) ConnectHide(cb func(Widget)) {
31073107 cb(fa)
31083108
31093109 }
3110- gobject.ObjectConnect(x.GoPointer(), "signal::hide", purego.NewCallback(fcb))
3110+ return gobject.SignalConnect(x.GoPointer(), "hide", purego.NewCallback(fcb))
31113111 }
31123112
31133113 // Emitted if keyboard navigation fails.
31143114 //
31153115 // See [method@Gtk.Widget.keynav_failed] for details.
3116-func (x *Widget) ConnectKeynavFailed(cb func(Widget, DirectionType) bool) {
3116+func (x *Widget) ConnectKeynavFailed(cb func(Widget, DirectionType) bool) uint32 {
31173117 fcb := func(clsPtr uintptr, DirectionVarp DirectionType) bool {
31183118 fa := Widget{}
31193119 fa.Ptr = clsPtr
@@ -3121,7 +3121,7 @@ func (x *Widget) ConnectKeynavFailed(cb func(Widget, DirectionType) bool) {
31213121 return cb(fa, DirectionVarp)
31223122
31233123 }
3124- gobject.ObjectConnect(x.GoPointer(), "signal::keynav-failed", purego.NewCallback(fcb))
3124+ return gobject.SignalConnect(x.GoPointer(), "keynav-failed", purego.NewCallback(fcb))
31253125 }
31263126
31273127 // Emitted when @widget is going to be mapped.
@@ -3133,7 +3133,7 @@ func (x *Widget) ConnectKeynavFailed(cb func(Widget, DirectionType) bool) {
31333133 // The ::map signal can be used to determine whether a widget will be drawn,
31343134 // for instance it can resume an animation that was stopped during the
31353135 // emission of [signal@Gtk.Widget::unmap].
3136-func (x *Widget) ConnectMap(cb func(Widget)) {
3136+func (x *Widget) ConnectMap(cb func(Widget)) uint32 {
31373137 fcb := func(clsPtr uintptr) {
31383138 fa := Widget{}
31393139 fa.Ptr = clsPtr
@@ -3141,14 +3141,14 @@ func (x *Widget) ConnectMap(cb func(Widget)) {
31413141 cb(fa)
31423142
31433143 }
3144- gobject.ObjectConnect(x.GoPointer(), "signal::map", purego.NewCallback(fcb))
3144+ return gobject.SignalConnect(x.GoPointer(), "map", purego.NewCallback(fcb))
31453145 }
31463146
31473147 // Emitted when a widget is activated via a mnemonic.
31483148 //
31493149 // The default handler for this signal activates @widget if @group_cycling
31503150 // is %FALSE, or just makes @widget grab focus if @group_cycling is %TRUE.
3151-func (x *Widget) ConnectMnemonicActivate(cb func(Widget, bool) bool) {
3151+func (x *Widget) ConnectMnemonicActivate(cb func(Widget, bool) bool) uint32 {
31523152 fcb := func(clsPtr uintptr, GroupCyclingVarp bool) bool {
31533153 fa := Widget{}
31543154 fa.Ptr = clsPtr
@@ -3156,11 +3156,11 @@ func (x *Widget) ConnectMnemonicActivate(cb func(Widget, bool) bool) {
31563156 return cb(fa, GroupCyclingVarp)
31573157
31583158 }
3159- gobject.ObjectConnect(x.GoPointer(), "signal::mnemonic-activate", purego.NewCallback(fcb))
3159+ return gobject.SignalConnect(x.GoPointer(), "mnemonic-activate", purego.NewCallback(fcb))
31603160 }
31613161
31623162 // Emitted when the focus is moved.
3163-func (x *Widget) ConnectMoveFocus(cb func(Widget, DirectionType)) {
3163+func (x *Widget) ConnectMoveFocus(cb func(Widget, DirectionType)) uint32 {
31643164 fcb := func(clsPtr uintptr, DirectionVarp DirectionType) {
31653165 fa := Widget{}
31663166 fa.Ptr = clsPtr
@@ -3168,7 +3168,7 @@ func (x *Widget) ConnectMoveFocus(cb func(Widget, DirectionType)) {
31683168 cb(fa, DirectionVarp)
31693169
31703170 }
3171- gobject.ObjectConnect(x.GoPointer(), "signal::move-focus", purego.NewCallback(fcb))
3171+ return gobject.SignalConnect(x.GoPointer(), "move-focus", purego.NewCallback(fcb))
31723172 }
31733173
31743174 // Emitted when the widgets tooltip is about to be shown.
@@ -3185,7 +3185,7 @@ func (x *Widget) ConnectMoveFocus(cb func(Widget, DirectionType)) {
31853185 //
31863186 // The signal handler is free to manipulate @tooltip with the therefore
31873187 // destined function calls.
3188-func (x *Widget) ConnectQueryTooltip(cb func(Widget, int, int, bool, uintptr) bool) {
3188+func (x *Widget) ConnectQueryTooltip(cb func(Widget, int, int, bool, uintptr) bool) uint32 {
31893189 fcb := func(clsPtr uintptr, XVarp int, YVarp int, KeyboardModeVarp bool, TooltipVarp uintptr) bool {
31903190 fa := Widget{}
31913191 fa.Ptr = clsPtr
@@ -3193,14 +3193,14 @@ func (x *Widget) ConnectQueryTooltip(cb func(Widget, int, int, bool, uintptr) bo
31933193 return cb(fa, XVarp, YVarp, KeyboardModeVarp, TooltipVarp)
31943194
31953195 }
3196- gobject.ObjectConnect(x.GoPointer(), "signal::query-tooltip", purego.NewCallback(fcb))
3196+ return gobject.SignalConnect(x.GoPointer(), "query-tooltip", purego.NewCallback(fcb))
31973197 }
31983198
31993199 // Emitted when @widget is associated with a `GdkSurface`.
32003200 //
32013201 // This means that [method@Gtk.Widget.realize] has been called
32023202 // or the widget has been mapped (that is, it is going to be drawn).
3203-func (x *Widget) ConnectRealize(cb func(Widget)) {
3203+func (x *Widget) ConnectRealize(cb func(Widget)) uint32 {
32043204 fcb := func(clsPtr uintptr) {
32053205 fa := Widget{}
32063206 fa.Ptr = clsPtr
@@ -3208,11 +3208,11 @@ func (x *Widget) ConnectRealize(cb func(Widget)) {
32083208 cb(fa)
32093209
32103210 }
3211- gobject.ObjectConnect(x.GoPointer(), "signal::realize", purego.NewCallback(fcb))
3211+ return gobject.SignalConnect(x.GoPointer(), "realize", purego.NewCallback(fcb))
32123212 }
32133213
32143214 // Emitted when @widget is shown.
3215-func (x *Widget) ConnectShow(cb func(Widget)) {
3215+func (x *Widget) ConnectShow(cb func(Widget)) uint32 {
32163216 fcb := func(clsPtr uintptr) {
32173217 fa := Widget{}
32183218 fa.Ptr = clsPtr
@@ -3220,13 +3220,13 @@ func (x *Widget) ConnectShow(cb func(Widget)) {
32203220 cb(fa)
32213221
32223222 }
3223- gobject.ObjectConnect(x.GoPointer(), "signal::show", purego.NewCallback(fcb))
3223+ return gobject.SignalConnect(x.GoPointer(), "show", purego.NewCallback(fcb))
32243224 }
32253225
32263226 // Emitted when the widget state changes.
32273227 //
32283228 // See [method@Gtk.Widget.get_state_flags].
3229-func (x *Widget) ConnectStateFlagsChanged(cb func(Widget, StateFlags)) {
3229+func (x *Widget) ConnectStateFlagsChanged(cb func(Widget, StateFlags)) uint32 {
32303230 fcb := func(clsPtr uintptr, FlagsVarp StateFlags) {
32313231 fa := Widget{}
32323232 fa.Ptr = clsPtr
@@ -3234,7 +3234,7 @@ func (x *Widget) ConnectStateFlagsChanged(cb func(Widget, StateFlags)) {
32343234 cb(fa, FlagsVarp)
32353235
32363236 }
3237- gobject.ObjectConnect(x.GoPointer(), "signal::state-flags-changed", purego.NewCallback(fcb))
3237+ return gobject.SignalConnect(x.GoPointer(), "state-flags-changed", purego.NewCallback(fcb))
32383238 }
32393239
32403240 // Emitted when @widget is going to be unmapped.
@@ -3244,7 +3244,7 @@ func (x *Widget) ConnectStateFlagsChanged(cb func(Widget, StateFlags)) {
32443244 //
32453245 // As ::unmap indicates that a widget will not be shown any longer,
32463246 // it can be used to, for example, stop an animation on the widget.
3247-func (x *Widget) ConnectUnmap(cb func(Widget)) {
3247+func (x *Widget) ConnectUnmap(cb func(Widget)) uint32 {
32483248 fcb := func(clsPtr uintptr) {
32493249 fa := Widget{}
32503250 fa.Ptr = clsPtr
@@ -3252,14 +3252,14 @@ func (x *Widget) ConnectUnmap(cb func(Widget)) {
32523252 cb(fa)
32533253
32543254 }
3255- gobject.ObjectConnect(x.GoPointer(), "signal::unmap", purego.NewCallback(fcb))
3255+ return gobject.SignalConnect(x.GoPointer(), "unmap", purego.NewCallback(fcb))
32563256 }
32573257
32583258 // Emitted when the `GdkSurface` associated with @widget is destroyed.
32593259 //
32603260 // This means that [method@Gtk.Widget.unrealize] has been called
32613261 // or the widget has been unmapped (that is, it is going to be hidden).
3262-func (x *Widget) ConnectUnrealize(cb func(Widget)) {
3262+func (x *Widget) ConnectUnrealize(cb func(Widget)) uint32 {
32633263 fcb := func(clsPtr uintptr) {
32643264 fa := Widget{}
32653265 fa.Ptr = clsPtr
@@ -3267,7 +3267,7 @@ func (x *Widget) ConnectUnrealize(cb func(Widget)) {
32673267 cb(fa)
32683268
32693269 }
3270- gobject.ObjectConnect(x.GoPointer(), "signal::unrealize", purego.NewCallback(fcb))
3270+ return gobject.SignalConnect(x.GoPointer(), "unrealize", purego.NewCallback(fcb))
32713271 }
32723272
32733273 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.
M v4/gtk/gtkwindow.go +10 -10
@@ -938,7 +938,7 @@ func (c *Window) SetGoPointer(ptr uintptr) {
938938 // of @window.
939939 //
940940 // This is a [keybinding signal](class.SignalAction.html).
941-func (x *Window) ConnectActivateDefault(cb func(Window)) {
941+func (x *Window) ConnectActivateDefault(cb func(Window)) uint32 {
942942 fcb := func(clsPtr uintptr) {
943943 fa := Window{}
944944 fa.Ptr = clsPtr
@@ -946,14 +946,14 @@ func (x *Window) ConnectActivateDefault(cb func(Window)) {
946946 cb(fa)
947947
948948 }
949- gobject.ObjectConnect(x.GoPointer(), "signal::activate-default", purego.NewCallback(fcb))
949+ return gobject.SignalConnect(x.GoPointer(), "activate-default", purego.NewCallback(fcb))
950950 }
951951
952952 // Emitted when the user activates the currently focused
953953 // widget of @window.
954954 //
955955 // This is a [keybinding signal](class.SignalAction.html).
956-func (x *Window) ConnectActivateFocus(cb func(Window)) {
956+func (x *Window) ConnectActivateFocus(cb func(Window)) uint32 {
957957 fcb := func(clsPtr uintptr) {
958958 fa := Window{}
959959 fa.Ptr = clsPtr
@@ -961,11 +961,11 @@ func (x *Window) ConnectActivateFocus(cb func(Window)) {
961961 cb(fa)
962962
963963 }
964- gobject.ObjectConnect(x.GoPointer(), "signal::activate-focus", purego.NewCallback(fcb))
964+ return gobject.SignalConnect(x.GoPointer(), "activate-focus", purego.NewCallback(fcb))
965965 }
966966
967967 // Emitted when the user clicks on the close button of the window.
968-func (x *Window) ConnectCloseRequest(cb func(Window) bool) {
968+func (x *Window) ConnectCloseRequest(cb func(Window) bool) uint32 {
969969 fcb := func(clsPtr uintptr) bool {
970970 fa := Window{}
971971 fa.Ptr = clsPtr
@@ -973,7 +973,7 @@ func (x *Window) ConnectCloseRequest(cb func(Window) bool) {
973973 return cb(fa)
974974
975975 }
976- gobject.ObjectConnect(x.GoPointer(), "signal::close-request", purego.NewCallback(fcb))
976+ return gobject.SignalConnect(x.GoPointer(), "close-request", purego.NewCallback(fcb))
977977 }
978978
979979 // Emitted when the user enables or disables interactive debugging.
@@ -986,7 +986,7 @@ func (x *Window) ConnectCloseRequest(cb func(Window) bool) {
986986 //
987987 // The default bindings for this signal are Ctrl-Shift-I
988988 // and Ctrl-Shift-D.
989-func (x *Window) ConnectEnableDebugging(cb func(Window, bool) bool) {
989+func (x *Window) ConnectEnableDebugging(cb func(Window, bool) bool) uint32 {
990990 fcb := func(clsPtr uintptr, ToggleVarp bool) bool {
991991 fa := Window{}
992992 fa.Ptr = clsPtr
@@ -994,12 +994,12 @@ func (x *Window) ConnectEnableDebugging(cb func(Window, bool) bool) {
994994 return cb(fa, ToggleVarp)
995995
996996 }
997- gobject.ObjectConnect(x.GoPointer(), "signal::enable-debugging", purego.NewCallback(fcb))
997+ return gobject.SignalConnect(x.GoPointer(), "enable-debugging", purego.NewCallback(fcb))
998998 }
999999
10001000 // emitted when the set of accelerators or mnemonics that
10011001 // are associated with @window changes.
1002-func (x *Window) ConnectKeysChanged(cb func(Window)) {
1002+func (x *Window) ConnectKeysChanged(cb func(Window)) uint32 {
10031003 fcb := func(clsPtr uintptr) {
10041004 fa := Window{}
10051005 fa.Ptr = clsPtr
@@ -1007,7 +1007,7 @@ func (x *Window) ConnectKeysChanged(cb func(Window)) {
10071007 cb(fa)
10081008
10091009 }
1010- gobject.ObjectConnect(x.GoPointer(), "signal::keys-changed", purego.NewCallback(fcb))
1010+ return gobject.SignalConnect(x.GoPointer(), "keys-changed", purego.NewCallback(fcb))
10111011 }
10121012
10131013 // Retrieves the `GtkAccessibleRole` for the given `GtkAccessible`.

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 1

Tags 102

↑↓ moveenter openesc close