diff options
| -rw-r--r-- | flaskapi.py | 4 | ||||
| -rw-r--r-- | manager.py | 21 | ||||
| -rw-r--r-- | window.py | 15 |
3 files changed, 18 insertions, 22 deletions
diff --git a/flaskapi.py b/flaskapi.py index 2e2ced4..633eed2 100644 --- a/flaskapi.py +++ b/flaskapi.py @@ -32,7 +32,7 @@ def seek(increment): @api.route("/albums/update", methods=["POST"]) def albums_update(): - return { "success": PixMan().update_config(album_list=request.json) } + return { "success": PixMan().update_config({ "album_list": request.json }) } @api.route("/albums") def albums_get(): @@ -78,7 +78,7 @@ def immich_redirect(path): @api.route("/config/update", methods=["POST"]) def config_update(): - return { "success": PixMan().update_config(**request.json) } + return { "success": PixMan().update_config(request.json) } @api.route("/config") def config_get(): @@ -52,7 +52,7 @@ class PixMan: config = Config.load(self.configfile) if os.path.exists(self.configfile) else Config() self.init_web(host, port) - self.replace_config(config) + self.update_config(config, replace=True) def init_web(self, host, port): self.t_flask = Thread(target=self.app.run, kwargs={ "host": host, "port": port }) @@ -78,24 +78,17 @@ class PixMan: self.display = PixDisplay(self.texture_list) self.display.main({}) # TODO glut args - def replace_config(self, config): - #old_config = self.config - self.config = config + def update_config(self, config, replace=False): + if replace: + self.config = config + else: + self.config.update(**config) # Initialize window if immich parameters are valid if self.config.immich_url and self.config.immich_api_key and not self.display: self.init_window() - # If all goes well - self.config.save(self.configfile) - return True - - def update_config(self, **config): - self.config.update(**config) - - # Initialize window if immich parameters are valid - if self.config.immich_url and self.config.immich_api_key and not self.display: - self.init_window() + self.display.update_config() # If all goes well self.config.save(self.configfile) @@ -19,12 +19,6 @@ class PixDisplay: self.win_w = 0 self.win_h = 0 - config = PixMan().config - self.max_framerate = config.max_framerate - self.image_duration = config.image_duration - self.transition_duration = config.transition_duration - self.auto_transition = config.auto_transition - self.transition_reverse = False self.text_prev = None self.tex = None @@ -32,6 +26,15 @@ class PixDisplay: self._force_redraw = False self.queue = Queue() + self.update_config() + + def update_config(self): + config = PixMan().config + self.max_framerate = config.max_framerate + self.image_duration = config.image_duration + self.transition_duration = config.transition_duration + self.auto_transition = config.auto_transition + @property def max_framerate(self): #return int(1000/int(1000/self.frame_time)) |
