moved `remove_screen(self.screen_out)` to `_on_complete`