From 771c33cdeb643989b771bbd0f1d31f7a699ea35d Mon Sep 17 00:00:00 2001 From: matham <moiein2000@gmail.com> Date: Tue, 14 Jul 2020 22:47:56 -0400 Subject: [PATCH] Don't do event loop stuff when stopped. --- kivy/base.py | 42 ++++++++++++++++++++++++++---------------- 1 file changed, 26 insertions(+), 16 deletions(-) diff --git a/kivy/base.py b/kivy/base.py index 8eea40792..03518421b 100644 --- a/kivy/base.py +++ b/kivy/base.py @@ -387,21 +387,26 @@ class EventLoopBase(EventDispatcher): Clock.tick() # read and dispatch input from providers - self.dispatch_input() + if not self.quit: + self.dispatch_input() # flush all the canvas operation - Builder.sync() + if not self.quit: + Builder.sync() # tick before draw - Clock.tick_draw() + if not self.quit: + Clock.tick_draw() # flush all the canvas operation - Builder.sync() + if not self.quit: + Builder.sync() - window = self.window - if window and window.canvas.needs_redraw: - window.dispatch('on_draw') - window.dispatch('on_flip') + if not self.quit: + window = self.window + if window and window.canvas.needs_redraw: + window.dispatch('on_draw') + window.dispatch('on_flip') # don't loop if we don't have listeners ! if len(self.event_listeners) == 0: @@ -421,21 +426,26 @@ class EventLoopBase(EventDispatcher): await Clock.async_tick() # read and dispatch input from providers - self.dispatch_input() + if not self.quit: + self.dispatch_input() # flush all the canvas operation - Builder.sync() + if not self.quit: + Builder.sync() # tick before draw - Clock.tick_draw() + if not self.quit: + Clock.tick_draw() # flush all the canvas operation - Builder.sync() + if not self.quit: + Builder.sync() - window = self.window - if window and window.canvas.needs_redraw: - window.dispatch('on_draw') - window.dispatch('on_flip') + if not self.quit: + window = self.window + if window and window.canvas.needs_redraw: + window.dispatch('on_draw') + window.dispatch('on_flip') # don't loop if we don't have listeners ! if len(self.event_listeners) == 0: