From 65e8fb4991fa7f62dbf6626bc628151c76f5d22f Mon Sep 17 00:00:00 2001 From: Walter Bender Date: Tue, 04 Dec 2012 17:51:35 +0000 Subject: set maximum fps when running from GNOME --- (limited to 'TurtleArt/tawindow.py') diff --git a/TurtleArt/tawindow.py b/TurtleArt/tawindow.py index e726c2a..115347d 100644 --- a/TurtleArt/tawindow.py +++ b/TurtleArt/tawindow.py @@ -111,6 +111,8 @@ class TurtleArtWindow(): self.nick = profile.get_nick_name() else: self.nick = None + self._lock = False + self._needs_redraw = False self._setup_events() else: self.interactive_mode = False @@ -498,9 +500,24 @@ class TurtleArtWindow(): def _expose_cb(self, win=None, event=None): ''' Repaint ''' + if not self.running_sugar: + if self._lock: + self._needs_redraw = True + return False + self._needs_redraw = False + self._lock = True + gobject.timeout_add(20, self._unlock) + self.do_expose_event(event) return True + def _unlock(self): + if self.running_sugar: + return + self._lock = False + if self._needs_redraw: + self.do_expose_event() + def do_expose_event(self, event=None): ''' Handle the expose-event by drawing ''' -- cgit v0.9.1