diff --git a/src/application.rs b/src/application.rs index 4ad0547..05a63b8 100644 --- a/src/application.rs +++ b/src/application.rs @@ -17,15 +17,19 @@ mod imp { impl ObjectImpl for Application {} impl ApplicationImpl for Application { + // called once by the primary instance + fn startup(&self) { + self.parent_startup(); + ui::Window::new(self.obj().as_ref()); + } + + // executed by the primary instance fn activate(&self) { self.parent_activate(); - match self.obj().active_window() { - None => { - let window = ui::Window::new(self.obj().as_ref()); - window.present(); - } - Some(win) => win.present(), - } + self.obj() + .active_window() + .expect("no window was active") + .present(); } }