improve progress handler

This commit is contained in:
Damien Elmes 2009-03-19 10:42:12 +09:00
parent e2baf57744
commit 93ca931f01

View file

@ -131,8 +131,9 @@ class Deck(object):
self.extraNewCards = 0 self.extraNewCards = 0
self.reviewEarly = False self.reviewEarly = False
try: try:
self.progressHandlerCalled = 0
self.engine.raw_connection().set_progress_handler( self.engine.raw_connection().set_progress_handler(
self.progressHandler, 100000) self.progressHandler, 100)
except: except:
print "please install pysqlite 2.4 for better progress dialogs" print "please install pysqlite 2.4 for better progress dialogs"
self.progressHandlerEnabled = False self.progressHandlerEnabled = False
@ -1653,6 +1654,9 @@ where id = :id""", pending)
self.disableProgressHandler() self.disableProgressHandler()
def progressHandler(self): def progressHandler(self):
if (time.time() - self.progressHandlerCalled) < 0.2:
return
self.progressHandlerCalled = time.time()
if self.progressHandlerEnabled: if self.progressHandlerEnabled:
runHook("dbProgress") runHook("dbProgress")