application: Allow sub-classes to override the Window creation
Sub-classes of GtkApplication might want to override the way an application window is created - for instance, to hook into GtkBuilder or to set up some basic UI or state. A new GtkApplication::create_window() virtual function is added to the GtkApplicationClass vtable, which returns the newly created GtkWindow. The gtk_application_create_window() function calls the vfunc and adds the returned window to the list of windows managed by the application instance. Calling gtk_application_add_window() will also set the default window, if one is not already set. This commit also removes a spurious g_object_ref_sink() on the newly created GtkWindow.
Showing with 76 additions and 16 deletions