Hi! So I think the problem is that you are trying to pass the object into the closure.

In your new() function, you initialize MyApp struct with the gtk::Application, then access the gtk::Application through the struct via the method build_ui(), which takes a &self. Rust does not like this very much (read: at all), it has a hard time figuring out ownership and borrowing if the struct start refering to itself.

If you remove the build_ui() member function, and do everything in the closure itself, it will run: