From 27c7c786ca204ff3cfa98ce7937790974e11e715 Mon Sep 17 00:00:00 2001 From: Andrew Psaltis Date: Sun, 27 Sep 2009 17:35:26 -0400 Subject: [PATCH] Reduce cursor flicker in wicd-curses. --- curses/wicd-curses.py | 36 ++++++++++++------------------------ 1 file changed, 12 insertions(+), 24 deletions(-) diff --git a/curses/wicd-curses.py b/curses/wicd-curses.py index ef50da8..cacd5be 100755 --- a/curses/wicd-curses.py +++ b/curses/wicd-curses.py @@ -400,7 +400,6 @@ class WiredComboBox(ComboBox): self.rebuild_combobox() self.set_focus(prev_focus) else: - print "updating..." wired.ReadWiredNetworkProfile(self.get_selected_profile()) if key == 'delete': if len(self.theList) == 1: @@ -768,6 +767,7 @@ class appGUI(): self.tcount+=1 toAppend=self.twirl[self.tcount % 4] self.status_label.set_text(text+' '+toAppend) + self.update_ui() return True # Make sure the screen is still working by providing a pretty counter. @@ -776,6 +776,7 @@ class appGUI(): #@wrap_exceptions def update_time(self): self.time_label.set_text(strftime('%H:%M:%S')) + self.update_ui() return True # Yeah, I'm copying code. Anything wrong with that? @@ -911,17 +912,16 @@ class appGUI(): continue def call_update_ui(self,source,cb_condition): - self.update_ui(from_key=True) + self.update_ui(True) return True # Redraw the screen @wrap_exceptions - def update_ui(self,from_key=True,from_alarm=False): - #self.update_status() - canvas = self.frame.render( (self.size),True ) - + def update_ui(self,from_key=False): if not ui._started: return False + canvas = self.frame.render( (self.size),True ) + # Update the screen ui.draw_screen((self.size),canvas) # Get the input data @@ -932,24 +932,12 @@ class appGUI(): # Resolve any "alarms" in the waiting if self.update_tag != None: gobject.source_remove(self.update_tag) - if max_wait == None: - max_wait = 25 - else: - max_wait *= 100 - - max_wait = int(max_wait) - self.update_tag = gobject.timeout_add(max_wait, \ - self.update_ui,False,True) - #print keys - #if keys == []: - # return True - self.handle_keys(keys) - - # If we came from the "alarm", die. - if from_alarm: - return False - - return True + if from_key: + max_wait = 20 + self.update_tag = gobject.timeout_add(max_wait, \ + self.update_ui,True) + self.handle_keys(keys) + return False def connect(self, nettype, networkid, networkentry=None): """ Initiates the connection process in the daemon. """