X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=xsetbg.py;h=cab7b9778c04e614b1c525a6627666821db1781c;hb=54fa19a157fefa369f13589cdace8b9585bf2379;hp=0a4a3f97b6169e3de3bbe12035b2d97b5b5abab6;hpb=9e375793293e76527dddcf4645c4336a51670127;p=xsetbg.git diff --git a/xsetbg.py b/xsetbg.py index 0a4a3f9..cab7b97 100755 --- a/xsetbg.py +++ b/xsetbg.py @@ -6,7 +6,7 @@ Author: Oleg BroytMann Copyright (C) 2000-2006 PhiloSoft Design """ -__version__ = "2.17.0" +__version__ = "3.0.0" __author__ = "Oleg BroytMann " __copyright__ = "Copyright (C) 2000-2006 PhiloSoft Design" __revision__ = "$Id$"[5:-2] @@ -91,6 +91,12 @@ if config.has_option("xsetbg", "borders"): else: borders = ["darkcyan", "steelblue", "midnightblue"] +# minimum time in seconds between occurences of the same image +if config.has_option("xsetbg", "min_delay"): + min_delay = config.getint("xsetbg", "min_delay") +else: + min_delay = 3600*24 # 24 hours + del config @@ -183,8 +189,19 @@ def run(): # Save current time global_db[timestamp_key] = current_time + # Select a random image and check if we've seen it recently; + # loop until we can find a new image (never seen before) or old enough. + for i in xrange(len(images)): # ensure the loop is not infinite + image_name = random.choice(images) + if global_db.has_key(image_name): + image_time = global_db[image_name] + if current_time - image_time > min_delay: + break + else: + break + global_db[image_name] = current_time + border = random.choice(borders) - image_name = random.choice(images) root, ext = os.path.splitext(image_name) # Save filename