job_status: fix metadata not updating after printer switch fixes #1301
This commit is contained in:
parent
a312c28471
commit
1e2f538210
@ -47,7 +47,7 @@ class KlippyFiles:
|
||||
os.path.dirname(params['filename']),
|
||||
thumbnail['relative_path']
|
||||
)
|
||||
self.run_callbacks("update_metadata", result["result"])
|
||||
self._screen.process_update("notify_metadata_update", params)
|
||||
|
||||
def add_file(self, item):
|
||||
if 'path' not in item:
|
||||
|
@ -337,7 +337,6 @@ class Panel(ScreenPanel):
|
||||
if self.flow_timeout is not None:
|
||||
GLib.source_remove(self.flow_timeout)
|
||||
self.flow_timeout = None
|
||||
self._files.remove_callback(self._callback_metadata)
|
||||
|
||||
def create_buttons(self):
|
||||
|
||||
@ -454,12 +453,6 @@ class Panel(ScreenPanel):
|
||||
for arg in args:
|
||||
self.buttons[arg].set_sensitive(False)
|
||||
|
||||
def _callback_metadata(self, action, item):
|
||||
if action == "update_metadata" and self.filename in item:
|
||||
logging.info("Callback complete")
|
||||
self.update_file_metadata()
|
||||
self._files.remove_callback(self._callback_metadata)
|
||||
|
||||
def new_print(self):
|
||||
self._screen.close_screensaver()
|
||||
if "virtual_sdcard" in self._printer.data:
|
||||
@ -476,6 +469,8 @@ class Panel(ScreenPanel):
|
||||
elif "action:resumed" in data:
|
||||
self.set_state("printing")
|
||||
return
|
||||
elif action == "notify_metadata_update" and data['filename'] == self.filename:
|
||||
self.update_file_metadata()
|
||||
elif action != "notify_status_update":
|
||||
return
|
||||
|
||||
@ -811,6 +806,5 @@ class Panel(ScreenPanel):
|
||||
self.labels['filament_total'].set_label(f"{float(self.file_metadata['filament_total']) / 1000:.1f} m")
|
||||
else:
|
||||
logging.debug("Cannot find file metadata. Listening for updated metadata")
|
||||
self._screen.files.add_callback(self._callback_metadata)
|
||||
self._files.request_metadata(self.filename)
|
||||
self.show_file_thumbnail()
|
||||
|
@ -385,9 +385,7 @@ class Panel(ScreenPanel):
|
||||
|
||||
def _callback(self, action, item):
|
||||
logging.info(f"{action}: {item}")
|
||||
if action == "update_metadata":
|
||||
return
|
||||
elif action in {"create_dir", "create_file"}:
|
||||
if action in {"create_dir", "create_file"}:
|
||||
self.add_item_from_callback(action, item)
|
||||
elif action == "delete_file":
|
||||
self.delete_from_list(item["path"])
|
||||
|
Loading…
x
Reference in New Issue
Block a user