/offlineimap/head: changeset 458

autorefresh may now be a floating-point value. Closes: #190060.
This commit is contained in:
jgoerzen
2003-04-29 03:25:42 +01:00
parent 56ac894f41
commit ce12331573
4 changed files with 17 additions and 4 deletions

View File

@@ -34,6 +34,12 @@ class CustomConfigParser(ConfigParser):
else:
return default
def getdefaultfloat(self, section, option, default, *args, **kwargs):
if self.has_option(section, option):
return apply(self.getfloat, [section, option] + list(args), kwargs)
else:
return default
def getdefaultboolean(self, section, option, default, *args, **kwargs):
if self.has_option(section, option):
return apply(self.getboolean, [section, option] + list(args),
@@ -91,3 +97,8 @@ class ConfigHelperMixin:
self.getconfig().getdefaultint,
self.getconfig().getint)
def getconffloat(self, option, default = CustomConfigDefault):
return self._confighelper_runner(option, default,
self.getconfig().getdefaultfloat,
self.getconfig().getfloat)

View File

@@ -43,8 +43,8 @@ class Account(CustomConfig.ConfigHelperMixin):
self.metadatadir = config.getmetadatadir()
self.localeval = config.getlocaleval()
self.ui = UIBase.getglobalui()
self.refreshperiod = self.getconfint('autorefresh', 0)
if self.refreshperiod == 0:
self.refreshperiod = self.getconffloat('autorefresh', 0.0)
if self.refreshperiod == 0.0:
self.refreshperiod = None
def getlocaleval(self):
@@ -79,7 +79,7 @@ class Account(CustomConfig.ConfigHelperMixin):
for item in kaobjs:
item.startkeepalive()
refreshperiod = self.refreshperiod * 60
refreshperiod = int(self.refreshperiod * 60)
sleepresult = self.ui.sleep(refreshperiod)
if sleepresult == 2:
# Cancel keep-alive, but don't bother terminating threads