adg: use GObject closures where possible