diff options
Diffstat (limited to 'manager.py')
| -rw-r--r-- | manager.py | 17 |
1 files changed, 12 insertions, 5 deletions
@@ -67,9 +67,7 @@ class PixMan: return # Initialize texture list - change_callback = lambda d: self.socketio.emit("seek", d) - album_keys = [ ] - self.texture_list = LazyCachingTextureList(album_keys, max_cache_items=self.config.max_cache_assets, change_callback=change_callback) + self.update_textures() # Begin downloading images self.t_idle_download = Thread(target=self.immich_connector.idle, daemon=True) @@ -79,6 +77,14 @@ class PixMan: self.display = PixDisplay(self.texture_list) self.display.main({}) # TODO glut args + def update_textures(self): + if self.texture_list: + self.texture_list.free() + change_callback = lambda d: self.socketio.emit("seek", d) + self.texture_list = LazyCachingTextureList(self.config.album_list, max_cache_items=self.config.max_cache_assets, change_callback=change_callback) + if self.display: + self.display.update_textures(self.texture_list) + def update_config(self, config, replace=False): oldconfig = copy.deepcopy(self.config) if replace: @@ -93,8 +99,9 @@ class PixMan: self.display.update_config() if oldconfig.album_list != self.config.album_list: - self.texture_list = LazyCachingTextureList(album_keys) - self.display.update_textures() + self.update_textures() + else: + self.texture_list.max_cache_items = self.config.max_cache_assets # If all goes well self.config.save(self.configfile) |
