Nitpick: `g_object_new()` returns a `gpointer`, so there's no need to cast its retval.